Sekizinci Gün: Nesne Tabanlı Dillerin Evrimi
ALGOL - 1950'lerin ortasında Fortran dilindeki problemleri gidermek için dizayn edilen bir dildir. Bunun yanında Algol, Pascal gibi bazı dillerin ortaya çıkmasında rol oynamıştır. ALGOL köşeli parantezli ifade bloklarını kullanır. Ayrıca onları sınırlandırmak için BEGIN END bloklarını kullanan ilk programlama dilidir.
Simula - Hemen hemen bütün nesne tabanlı ve nesne yönelimli dillerin atası 1960'larda geliştirilen Simula dilidir. Simula, ALGOl fikri üzerine inşa edilmiş bir dildir; ancak üzerine kapsülleme(encapsulation) ve kalıtım(inheritance) konseptlerini eklemiştir. Belki daha da önemlisi, karmaşık sistemleri tanımlama ve simülasyon geliştirme dili olarak kullanılan Simula'nın, programlama dünyasını spesifik problem alanına özel kod yazma disiplini ile tanıştırmasıdır.(nesne taslaklarını hazırlayan kod kümelerinin yazılıp daha sonra kullanılması.)
Smalltalk - Simula, Smalltalk dilinin birincil esin kaynağıdır. Bu fikir sonraları farklı geliştirmelerle desteklenmiştir. Smalltalk hem bir dili hem de bir uygulama geliştirme ortamını temsil eder. Saf nesne yönelimli bir dil olan Smalltalk dilinde her şey bir nesne olarak ele alınır, integer bile bir sınftır. Smalltalk, günümüzde yaygın olmasa da kendisini takip eden bütün nesne yönelimli diller onun konseptinden etkilenmiştir. Bu yüzden önemli bir kilometre taşıdır.
C with classes(C++) : Orijinal adı C with Classes olan C++ dili, Bjarne Stroustrup adlı bir akademisyen tarafından, doktora tezinde uygulama geliştirirken karşılaştığı sorunlardan yola çıkarak 1979’da geliştirilmeye başlanmış, 1985’de ilk versiyonu yayınlanmıştır. Bu yeni dilin geliştirilme aşamasında başta C ve Simula olmak üzere ALGOL 68, Ada gibi dillerden esinlenilmiştir. Genellikle C dilinin daha gelişmiş hali olarak nitelendirilir.(Tip kontrolü, aşırı yüklenmiş fonksiyonlar, statik fonksiyonlar, abstract sınıf, protected üyeler gibi dil yenilikleri getirmiştir). Ancak en önemlisi C++, C diline nesne yönelimli programlama özelliğini eklemiştir. C++ dili, donanım seviyesinde uygulama geliştirirken(işletim sistemi, sürücü vb.) alt seviye bir dil olması sebebiyle halen tercih edilmektedir.
OAK: Doksanlı yılların hemen başında, Sun Microsystems çalışanlarından James Gosling ve grubu; eğlence platformları, mikrodalga fırınlar vb. dijital olarak kontrol edilen tüketici aletleri için ileri seviye uygulamalar geliştiriyorlardı. Bu programları C++ ile yazmak zor olduğu için 1991 yılında OAK adı verilen bir dil oluşturdular.
Java: Geliştirme aşamasında OAK, genel amaçlı bir programlama dili haline geldi ve 1995 yılında adı değiştirilerek Java 1.0 sürümü ile duyuruldu. “Write once, Run Anywhere” yani platform bağımsız uygulama geliştirmek hedefine olan Java dilinin esas hedefi, yaygınlaşan internet erişimine ayak uydurarak web uygulamalarının kolay geliştirileceği bir platform haline gelmekti. Java, günümüzde halen yaygın olarak kullanılmaktadır. Bir programlama dilinden öte Smalltalk gibi bir uygulama geliştirme ortamı ve çalışma zamanıdır. Java teknolojisi ile uygulama geliştirmek ve çalıştırmak için Java Virtual Machine kullanılması gereklidir ve derlenen kaynak kodlar, platform bağımsızlık hedefi için Java Byte Code adında ortak bir ara dile dönüştürülmektedir. Ayrıca Java platformu, zengin ve genişletilebilen bir kod kütüphanesi içermektedir.
Yararlanılan kaynak: Açık Akademi