ana sayfa : araştırma : java uygulamaları : javanın tarihçesi [ 2 / 12 ]

GERİ

2 JAVANIN TARİHÇESİ

Java konusundaki ilk çalışmalar, oldukça eski tarihlere dayanmaktadır.1970’ li yılların sonunda Bill Joy, bugün kullanılan Java’nın temellerini atmaya başlamıştır.1990 yılında Bill Joy yayınladığı “Further” başlıklı bir makalede C++ temelli bir nesne ortamının oluşturulmasına yönelik fikirlerini belirtmişti. Bugünkü anlamıyla Java’nın oluşturulmasını Nisan 1991’de kurulan ‘Green Proje’ adı verilen grup sağlamıştır. Ekim1992 tarihinde bu grup Sun firmasının sahibi olduğu First Person Inc. Adındaki firma altında buluştu.1994 yılına kadar Bub firma tarafından yapılan ve başarısızlıkla sonuçlanan girişimlerden sonra aynı ekipten Patrick Naughton’ nun bir hafta sonu çalışarak yarattığı Web Runner isimli Prototip göz gezdirici (browser) bu konudaki dönüm noktasını oluşturdu. Ekibin diğer üyelerinin de katkıları ile Web Runner isimli yazılım kısa sürede Hotjava’ya dönüştürüldü.(Keskinkılıç,1999)

Java iki kavrama karşılık gelmektedir: Programlama dili ve Platform.

 

2.1 Programlama Dili Java

Java, yüksek seviyeli bir programlama dilidir. Java programı hem derlenir ve hem de yorumlanır. Derleyici ile Java programını orta seviyeli programlama dili olan Java Baytkod’a çeviririz. Java Baytkodları Java yorumlayıcıları tarafından yorumlanır. Derleme bir kere yapılır; fakat, program her çalıştırıldığında yinelenir.

Java Baytkodları, Java Sanal Makinesi (VM- Virtual Machine) için makine kodu komutlarıdır. Her Java yorumlayıcısı (Java geliştirme aracı veya web gezgini) Java VM’ in bir uygulamasıdır. Java VM aynı zamanda bir donanım da olabilir.

Şekil 2.1 Bir Java Programının çalıştırılma çevrimi

Java Baytkodu bir kez hazırlandıktan sonra her yerde kullanılabilir. Java programı Java derleyicisi olan her hangi bir platformda (Windows NT, Solaris, Machintosh) çalıştırabiliriz.

 

2.2 Java Platformu

Java platformu, programı çalıştırabilen yazılım ve donanım ortamıdır. Java platformunun diğer platformlardan farkı sadece yazılım platformu oluşudur ve diğer donanım platformlarının üzerinde çalışır. Diğer bir çok platform donanım ve işletim sisteminin birleşimidir.

Java platformunun iki bölümü vardır.

  • Java Sanal Makinesi (Java VM)
  • Java Uygulama Programı (Java API)

Java API, bir çok özelliği destekleyen hazır yazılmış yazılım bileşenlerinin tamamıdır. Java API’ leri kütüphanelerde gruplandırılmışlardır.

Aşağıdaki şekil bir Java uygulamasının (Java_application veya Applet) çalışmasını açıklamaktadır. Bu şekil Java API’ leri ve VM ‘in Java Programını donanım bağımlılığından kurtarmaktadır.

 

Şekil 2.2 Java platformdan bağımsızdır.

Java platformdan bağımsız bir çerçevede çalışmasından dolayı biraz yavaş olabilir. Fakat iyi derleyiciler ve iyi ayarlanmış yorumlayıcılar Java’nın performansını yerel kodları hızına yaklaştırabilmektedir.

 

2.3 Web Sayfaları

İnternet’i kullanırken bilgisayarımızı başka bir bilgisayara (veya bir bilgisayar ağına) bağlarız ve bağlantı yaptığımız sistem bizlere çeşitli bilgi aktarımı yapar. Bu aktarılan bilgi, düz yazı, resim, program, ses dosyaları vs. gibi, değişik türlerden oluşabilir. İnternet iletişimini World Wide Web (dünya çapında bir ağ) diye adlandırılan bir bilgisayar ağı üzerinden gerçekleştirir. Bu bilgisayar topluluğu içerisinde hangi bilgisayara ulaşacağımızı ise bir Ağ arama programı (Web Browser) ile yaparız. Bu türden şu anda en çok kullanılan programlar arasında ise Netscape Navigatör ve İnternet Explorer bulunur. Kullandığımız iletişim programı ise İnternet üzerinden gelen bilgileri ekranınızın üzerine yansıtır. Yalnızca bu işlemi yapmakla kalmaz kopyaladığımız dosyaların makinemizin üzerindeki hard diske kaydını da kontrol eder.(Keskinkılıç,1999)

 

2.4 Html

İnternet’te aktarılan bilgiler genelde Web Page (ağ sayfası) denilen bir şekilde alıcıya ulaşır. Eğer tüm İnternet kullanıcıları aynı türden bir bilgisayara sahip olmuş olsalardı iş oldukça kolay olurdu. Bilgiyi gönderen sistem alıcının nasıl bir bilgisayara sahip olduğunu bilmiyor.

Alıcı IBM uyumlu bir PC veya bir Apple Macintosh hatta tamamen değişik bir işletim sistemi ile çalışan bir bilgisayar olabilir. Bilgiyi gönderen sistem, alıcının türünü bilmez ise ne yapmalıdır? IBM uyumlu bir alıcıya, Apple Macintosh türü bir bilgi gönderilirse alıcı makine gelen bilgiyi anlayamayacaktır. İşte bu sorunu çözmek için Web Page hazırlayanlar belirli bir standarda uymak zorundadırlar. Bu standardın adı ise Hypertext Markup Language  veya kısa adı ile HTML.

HTML ile hazırlanmış Web Pagelerde  yalnızca çeşitli bilgiler bulunmaz, istenirse başka bir web sayfasına doğrudan geçebilme olasılığı da hazırlanabilir. Bu yönteme İngilizcede Link To Other Web Page (başka ağ sayfalarına bağlantı noktası) ismi verilir. Ağ sayfasını hazırlayan başka bir ağ sayfasına geçiş yapılabilecek yerlerde ya bir resim yada altı çizili bir yazı kullanabilir. Dilerse bu tür geçiş yerlerini değişik renklerde de yapabilir. Web sayfasını kullanan mouse ile bu alanları kliklediğinde sistem otomatik olarak yeni bir web sayfasını İnternet’te  aramaya başlar ve bulunca da ekrana getirir.

Bir web sayfası tüm ekrana  tamamen sığmayabilir. Bu gibi konumlarda ise web sayfasının değişik yerlerine yerleştirilen bağlantı noktaları ile aynı web web sayfasının başka bir bölümü ekrana getirilebilir.

HTML’nin başka bir güzel olanağı ise, daha önceden açılmış, görülmüş değişik web sayfalarının bağlantı noktalarını, değişik renklerde gösterebilmesidir. İnternet sistemi yüklenen web sayfalarını kullanılan bilgisayarın hard diskine kaydettiğinden, daha önce açılmış bir web sayfasının, yeniden ekrana gelmesi oldukça az bir zaman alır.

Bir web sayfası içine yerleştirilen çeşitli onay kutuları, giriş pencereleri vs. gibi olanaklarla kullanıcı iletişim sırasında, bilgiyi gönderen bilgisayara çeşitli yanıtlar, istekler verebilir ve bu sayede bir diyalog oluşturabilir

Web sayfaları HTML yardımı ile kullanıcının gönderici bilgisayardan çeşitli dosyaları kopyalayabilmesini de gerçekleştirebilir. Kopyalanan dosyanın türüne göre web sayfası ya dosyanın kaydını yapar yada kopyalanan dosyayı kullanacak bir programı çalıştırır. Örneğin kopyalanan program bir ses kaydı ise sistem, kullanıcının onayına göre, ya hard diske kayıt işlemini başlatır ya da kopyalanan audio dosyasını dinleyebilmek için ses programını çalıştırır.

HTML bir programlama dili değildir. İnternet kullanıcısının geri gönderdiği bilgiler, web sayfasını yollayan bilgisayar tarafından belirli bir ölçüde işlenebilir ama bu tam anlamı ile bir programlama olayı değildir. İşte bu konumda JAVA programlama olayında bizlere büyük kolaylık sağlıyor.

JAVA kullanılmadan hazırlanmış bir web sayfasındaki herhangi bir görüntünün değişebilmesi için yeni bir web sayfasının yüklenmesi gerekir. Sürekli olarak ağ üzerinden yeni web sayfalarının iletişimi ise oldukça uzun zaman almaktadır. Ağ arama programları Java’ yi destekledikleri sürece sorunları çözümü kolaylaşır. Java destekli bir web browser, yükledikleri web sayfası (HTML) ile birlikte yanında birde Java programını bilgisayarlarının belleğine yerleştirirler. Bu JAVA programı artık alıcı bilgisayarda web sayfası ile birlikte lokal çalışır; kullanıcın web sayfası üzerinde verdiği komutlara anında uyar ve reaksiyon gösterir. Örneğin kliklendiğinde belirli bir melodi çalması gereken bir ikon veya işaret çalıştırıldığında, gereken müzik dosyası ağ üzerinden yüklenmez, kullanıcının müzik çalma isteği bağlantı yapılmış diğer bilgisayara gönderilmez, lokal çalışan JAVA programı bu komutların kontrolünü yapar.

Sun Microsystem tarafından geliştirilmiş olan JAVA önce aynı firmanın bir ağ tarayıcısı olan HotJava içerisinde kullanılmıştı.(HotJava Internet Explorer veya Netscape gibi bir web browser dır.) Daha sonra diğer ağ tarayıcı programlar da JAVA’yı  desteklemeye başladılar.

JAVA programları tüm değişik işletim sistemlerinde çalışırlar.