Nedir? : Java

Bazıları için farklı anlamlar ifade etse de, bir yazılım geliştirici için Java; nesne yönelimli, mimariden bağımsız ve yorumlanan bir programlama dildir.

Şimdi de taşı kaldıralım ve bakalım altından neler çıkacak:

Java’nın Kısa Tarihçesi

Java dilinin ilk versiyonu Sun Microsystems bünyesinde 1991 yılanda başlatılan bir ARGE projesi sonucunda geliştirilmiştir. Bu ilk versiyon “Oak“ olarak adlandırıldı ve 1995’te adı “Java” olarak değiştirilene kadar da bu adla anıldı. Java, 1.0 versiyonun duyurulmasının ardından beraberinde bir çok yenilik getirerek hızla gelişmeye devam etti. Java’nın gelişmesindeki en büyük etki ise kuşkusuz Web’in o yıllardaki hızlı yükselişidir. Eğer Web hızla gelişmeseydi Java elektronik cihazları programlamada kullanılan bir dil olarak kalabilirdi. Diğer taraftan, elektronik cihazların programlamasında karşılaşılan taşınabilirlik problemlerinin Web’de de olduğunu gören Java geliştiricileri onu bu yönde geliştirmeye devam etmişlerdir.

Java 1.0’ın duyurulmasından kısa bir süre sonra Java 1.1 oluşturulmuştu bile. Bu versiyonla Java’ya pek çok yeni özellik eklendi, ve bunun yanında bazıları ise çıkarıldı.

Java’nın dönüm noktası ise 1.2 versiyonudur. Pek çok konuda yenilikler getiren ve dili büyük ölçüde geliştiren bu versiyondan sonra Sun, Java ürününü J2SE (Java 2 Platform Standard Edition) olarak adlandırdı ve sonraki versiyonlar buna göre adlandırılmaya başlandı. Java’nı gelişimi bundan sonra da zamanının ve zamanın ötesinin gereklerine uygun şekilde sürmeye devam etti.

Java’nın bir sonraki büyük versiyonu Java 1.5 yani J2SE 5 oldu. Jenerikler, otomatik kutulama, annotations(notlar), enumaration(numaralandırma), for-each sitili for döngüleri, değişken uzunluklu argümanlar (varargs) gibi büyük çaplı yenilikler getiren bu versiyon dilin kapsamını ve gücünü büyük ölçüde genişletmiştir.

Sonraki versiyon ise günümüzde kullanılan 1.6 versiyonu olmuştur. Bu versiyonla birlikte Sun, adlandırma politikasını yeniden değiştirerek 1.6 versiyonunu Java SE 6 olarak adlandırmıştır. Java SE 6 dile büyük yenilikler getirmese de, J2SE 5’in yeniliklerini daha da geliştirmiş, yeni paketler ve var olan paketlere yeni sınıflar, sınıfların çoğuna da yeni metotlar eklemiştir.

Java’nın Ortaya Çıkış Nedeni

Java’nın bu günlere gelmesinde varlığıyla en büyük katkıyı sağlayan internet olsa da, şaşırtıcı bir şekilde Java’nın oluşturulmasının arkasındaki asıl neden elektronik cihazların programlamasında karşılaşılan zorluklardır. Farklı işlemci tipleri kullanan bu cihazlar için ortak bir programlama diline ihtiyaç duyuluyordu. Java’nın pek çok şeyi miras aldığı C ve C++ dillerini herhangi bir işlemci tipi için derlemek mümkün olsa da, bunun için her işlemci tipine bir derleyici yazılması gerekiyordu ki, bu maliyeti son derece yüksek bir gereklilikti. İşte Java tam olaraktan bunun için geliştirilmiştir.

Daha sonra, yukarıda bahsettiğimiz gibi, elektronik cihazların programlamasında karşılaşılan taşınabilirlik problemlerinin Web’de yani internette de olduğu fark edildi. Böylece, nötr mimarili (platformdan bağımsız) bir programlama dili oluşturma arzusu ile ortaya çıkan Java internetin de etkisiyle günümüz yazılım dünyasının vazgeçilemez bir öğesi haline geldi.

Nesne Yönelimlilik

Java’nın nesne yönelimli olduğuna daha tanımını verirken değinmiştim. Java’nın temeli Nesne Yönelimli Programlamaya (Object Oriented Programming, kısaca OOP) dayanmaktadır. Öyle ki, “her şey bir nesnedir” prensibine göre tasarlanmış olan Java ile çok basit bir programı yazarken bile nesne yönelimli programlamanın bazı kavramlarının anlaşılmış olması gerekir.

Mimariden Bağımsızlık

Java’nın en önemli bir diğer özelliği mimariden bağımsızlık, bir başka deyişle taşınabilirliktir. Java’yı geliştirenlerin çözmek istedikleri problemlerden biri de yazılan kodların uzun ömürlü ve taşınabilir olmasıydı. Java’nın geliştirildiği o yıllarda ve hatta şimdilerde bile, işletim sistemi ya da donanım değişiklikleri sonrasında programların çalışacağından emin olmak isteniyordu. Java bu problemi taşınabilir çalıştırılabilir kod üretmeyi başararak çözdü. Ayrıntılarına girmeden değinecek olursak bu, şu şekilde başarılmaktadır: Önce Java kodu, Java derleyicisi tarafından “bytecode”a dönüştürülür. Bytecode, Java çalışma-zamanı ortamı (Java Runtime Environment, kısaca JRE) tarafından -yorumlanarak- çalıştırılmak üzere üretilmiş bir ara koddur. Böylece JRE yüklü her makinede çalışabilen programlar yazılabilmesi sağlanmıştır.

Son Sözler

Böylelikle Java dendiğinde bir yazılım geliştiricinin aklında neler canlandığına kısaca değinmiş olduk. Daha değinilmesi gereken, Java’yı Java yapan pek çok özellik var, onları da zamanla aktarmaya çalışacağım.

Java’yı öğrenmek isteyenlere kısa bir not: İnternette Java hakkında binlerce kaynak bulmak mümkün. Diğer taraftan, konuyu derinlemesine öğrenmek isteyenlere ALFA’nın dilimize kazandırdığı eşsiz kaynak “Herkes İçin Java – Java SE 6”yı çekinmeden önerebilirim. Ancak “Herkes İçin” önekinin aldatıcı olabileceğini, bu nedenle daha önceden algoritma ve programlama konularında kısada olsa bir geçmişiniz olması gerektiğini belirteyim.

Kaynaklar:

  • Herkes İçin Java – Java SE 6, Herbert Schildt
  • javaturk.org
Reklamlar

One thought on “Nedir? : Java

Bir Yorum Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Connecting to %s