Java Nedir?

Java

İlk programlama dillerinin gelişimlerine bakarsak Java’nın faydalarını daha iyi anlarız.

  • Her makine için o makinenin makine dilinde

Bilgisayarlar ilk çıktıklarında programcılar uygulama yapacakları bilgisayarın marka ve modeline göre o makinenin dilinde program geliştirmek zorundaydılar. Makine dilinde program yazmanın oldukça zor olmasının yanında birde bilgisayarların marka çeşitleri artınca işler bir hayli zorlaştı.

  • Assembly

Makine diline nazaran daha kolay bir dil olsa bile üst düzey yazılım dillerine göre hayli zor bir dil.

  • Platform bağımlı ve prosedurel diller

Assembly den sonra çıkan üst düzey diller ; makine ve işletim sisteminden bağımsız, prosedurel olarak program geliştirilmesine,  uygulamanın çalıştırılacağı sistemlerde o sisteme uygun bir derleyici ile tekrar derlenmesi şartıyla imkan sağlamıştır.

  • Platform bağımsız ve nesneye dayalı diller

Farklı işletim sistemleri ve bilgisayar üretici firmaların çıkması, ağ üzerinde farklı bilgisayarların birbirleriyle iletişim kurmalarının gerekliliği ve prosedurel programlama dil yapısının büyük problemleri çözerken zayıf kalması ; nesneye dayalı  ve platform bağımız programlama dillerinin geliştirilmesini gerektirdi.

Java’nın Gelişimi

James Gosling  tarafından sun firmasında küçük boyutlu ,güvenilir,taşınabilir ve dağıtık bir işletim sistemi oluşturmak için çalıştıkları bir projede c++ ın yetersiz kalması, James Gosling ‘i yeni bir dil geliştirmeye yitmiştir.  Java ilk olarak OAK ismiyle çıkmış daha sonra ismi JAVA olarak değiştirilmiştir.

Java Nedir?

Java programlama dili olmasının yanı sıra aslında bir teknoloji topluluğur. Çünkü java bir çok ortam ve cihaz için uygulama geliştirebileceğimiz bir dildir.

Java’nın geliştiricisi James Gosling e göre JAVA;

  • Basit

Standartlara bağlı olması, bellek yönetiminin programcıdan bağımsız otomatik yapılması, çöp toplayıcı sayesinde işi biten nesnelerin bellekten atılması ve hazır kütüphanelere sahip olması basit ve kolay yazılım geliştirilmesini sağlar.

  • Nesne Merkezli

Java nesne yönelimli bir programlama dilidir eğer Java dilinde program geliştirip nesne dayalı programlama kullanmıyorsak Java nın avantajlarından faydalanamayız.

  • Ağlarda yetenekli

Platform bağımsız olması, farklı bilgisayarlardaki uygulamalarla kuracağı iletişimlerde kullanılan nesnelerin güvenli iletişimi ,çok kanallı programlamaya imkan sağlaması ve ağ için tasarlandığından ağ ve güvenliği konusunda sahip olduğu kütüphaneler sayesinde ağlarda yetenekli bir programlama dilidir.

  • Yorumlanan ve Platform Bağımsızdır

Java hem  derlenen hem de yorumlanan bir dildir. Java diliyle geliştirilen uygulamalar ilk önce .java  isimli dosyalar olarak oluşturulur. Daha sonra bu dosyalar .javac ile derlenerek java sanal makinesinin anlayacağı .class uzantılı bytecode diye adlandırılan dosyalara dönüştürülür.Daha sonra bu byte kodlar java sanal makinesi üzerinde çalışma zamanında yorumlanarak makine diline çevrilir böylece uygulama makine üzerinde koşturulmuş olur.

Java sanal makinesi yorumlama işlemini yaparken Java çalışma ortamındaki kütüphaneleri kullanır. Java sanal makinesi işini bitirdikten sonra bellekten atılır.

Her işletim sistemi  için bir Java sanal makinesi sürümü mevcuttur. Java sanal makinesi java uygulamaları yapmak için bilgisayarımıza indirmek zorunda  olduğumuz java geliştirme kit içinde mevcuttur.

Java sanal makinesi  ara bir katmandır.Yukardaki anlatılan yapı Javanın platform bağımsız olması sağlar. Oluşan byte code ları herhangi bir işletim sistemindeki java sanal makinesinde yorumlayıp uygulamanın makine de koşturulmasını sağlanalabilir.

  • Sağlam

Java dayanıklı,sağlam yazılımlar üretmek için geliştirilmiştir. Java derleme ve yorumlama zamanlarında kontrol mekanızmalarına sahiptir.Derleme anında kontrol edilebilen hataları yakalar ,kodun derleme işlemini başarız kılar, hatanın ne olduğunu söyler ve düzeltilmesini ister. Uygulamanın çalışma anında yapılan yorumlama işleminde ise hata işleme mekanızmalarıyla hataların ve istisnaların try /catch yapılarıyla yakalanıp uygulamanın çalışmasına zarar vermeden bildirilmesi sağlanır.

Bellek yönetimini otamatik yaparak  bu yüzden oluşabilecek hataları önler.

Güçlü bir tip sistemine sahiptir çalışma zamanında tip uyumu ve çevrimi kontrol edilir.

  • Güvenli

Ağ ortamları için geliştirildiğinden ağ üzerinde gelebilecek tehlikelere karşı koyabilecek yapıdadır.  Nesne erişimlerini kontrol altında tutar.

  • Taşınabilir

Platform bağımsız olması sayesinde taşınabilir bir dildir.

  • Yüksek performanslı

Java dili tip hiyerarşileri ve hazır kütüphaneleri  ile nesne merkezli programlama modeli yüksek performanslı uygulamalar çıkarmak için biçilmiş kaftandır.

  • Çok kanallı

Java ağ konusunda yetenekli olduğundan çok kanallı programlamaya olanak sağlar.

  • Dinamik

Java Teknolojileri

Java , Java SE,Java EE ve Java ME olmak üzere 3 farklı sürüme sahiptir.  Java SE java programlama dilidir. Java temellerini, javanın özelliklerini kapsar. Java EE javanın büyük kurumsal projeleri kolayca gerçekleyebilmesi için belirli standartlar eşliğinde geliştirilmiş bir sürümdür. Java EE ve farklı frameworkler ile birlikte kullanılarak kolay ,hızlı, esnek uygulamalar geliştirilir. Java ME ise javanın gömülü sistemlerdeki kullanılan sürümüdür.

admin

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir