Java Nedir?

Java ilk olarak Sun Microsystems tarafından 1995 yılında piyasaya sürülen bir programlama dili ve bilgi işlem platformudur. 

Java Nesne Tabanlı Programlama (Object Oriented Pogramming) “Oop” dilidir. Nesne tabanlı programlama mantığında tüm her şey bir nesnedir. Nesne, içerisinde veri ve veriler üzerinde işlem yapacak olan metotları bulunduran yazılım bileşenidir. Nesne kendi işlevselliğini de içinde taşırlar. Nesneler uygulamada içerisinde tekrar tekrar kullanılabilir. Veri ve metotlar, birlikte nesnenin üyeleri adını alır. Bir nesne yapısı, bir sınıf  içinde tanımlanır.

Nesne tabanlı programlama dillerinde dört temel özellik bulunmaktadır. Bunlar;

  • Abstraction (Soyutlama): nesneyi bazı karakteristikleri olan ve bazı eylemleri gerçekleştiren bir yazılım bileşenidir. Yazılım açısından nesne, bir varlığın temsil biçimidir.
  • Polymorphism (Çok biçimlilik): Farklı nesnelerin, aynı mesaja farklı şekillerde cevap verebilme yeteneğidir. Her nesne sınıfı, kendi metotlarını paketlediği için ve bu metotlar programın kalan kısmı için gizli olduğundan, farklı sınıflar aynı isimde bazı metotlara sahip olabilirler.
  • Inheritance (Kalıtım): bir nesnenin özelliklerinin farklı nesneler tarafından da kullanılabilmesidir.
  • Encapsulation (Kapsülleme): sınıfı oluşturan metot ve özelliklerin gerçekleştirme biçiminin, bu sınıfı kullanacak olan kullanıcılardan gizlenmiş olmasıdır. Nesne içerisindeki özellik ve metotların erişim belirteçlerinin olmasıdır.

Bu özelliklere sahip olan programlama dilleri nesne tabanlı programla dilidir.

Java programlama dilinin birçok özelliği bulunmaktadır. En temel özellikleri:

  • Basittir: Diğer programlama dilleriyle geliştirilen büyük sistemlerde bir süre sonra sisem kontrol edilemez ve geliştirilemez bir hal almaktadır. Tam bu noktalarda java basit olduğu için bu tip sorunlarla uğraşmazsınız.
  • Nesneye Yönelimli Programlama dilidir.
  • Dağıtıktır: birden fazla bilgisayarda çalışan programların bir biriyle uyumlu çalışabilmesidir. Bir yazılım sisteminin bir kısmı A makinesinde çalışırken diğer kısmı da B makinesinde aynı anda çalışması mümkündür.
  • Sağlamdır: Programlamadaki hatalar daha geliştirme aşamasında anlaşılabilmektedir. Geliştirme aşamasında anlaşılmayanlar hatalar, programın çalışması esnasında yakalanabilmektedir. ‘Exception‘, programda hatanın ne olduğu, nerede olduğu ve hangi işlemi yaparken olduğu belirtebilir. Diğer programlama dilleri ‘Bir hata oldu!’ mesajınız göstererek çökerken java ile geliştirilen program çalışmaya devam eder.
  • Güvenlidir.
  • Taşınabilirdir: Java ile geliştirilen yazılımlar her ortamda aynı veya benzer bir şekilde çalışır. Her ortam/makine için ayrı bir program yazmaya gerek kalmaz. Geliştirici yazılımın çalışacağı makinenin durumunu göz önüne almak zorunda kalmaz.
  • Yorumlanır: Java programının komutları, çalışırken makinenin anlayacağı dile çevrilir. Java’da bu Java Virtual Machine (JVM) tarafından yapılır.
  • Yüksek Başarımlıdır.
  • Çok Kanallıdır: Java dili multi-threaded‘dir. Multi-Threaded, bir programın aynı anda birden fazla işlemi yürütebilmesi demektir.
  • Dinamiktir: Java’da bir programla kullandığı birimlerin (kütüphaneler,modüller veya sınıfların) birbirine bağlanması çalıştırma anında yapılır. Buna ‘sonradan bağlama’ (late binding) denir. Kullanılan birimlerin iç yapısı değiştirildiğinde, bu birimleri kullanan programın değişmesi gerekmez. C++ gibi dillerde herhangi bir değişiklikte tüm adımların yeniden işleme tabi tutulması gerekir. Buna da ‘erken bağlama’ (early binding) denir.

Java hakkında ilginizi çekebilecek bilgiler:

Java’nın adı başta Oak’tu

Geliştirici James Gosling’in evinin penceresinin önündeki büyük bir meşe ağacının adıymış. Sun şirketinin avukatlarının Oak adında kayıtlı başka bir yazılım şirketi olduğunu fark etmelerinin üzerine Sun’ın pazarlama bölümü tarafından Java olarak değiştirilmiş.

Diğer bir rivayete göre Gosling ve programlama ekibi bir gün isim bulmak üzere bir kafede toplanmış ve Java isminde karar kılmış. Bu doğru olabilir çünkü sınıf dosyalarının içindeki “0xCafeBabe” sihirli sayısının ismi ekibin kahve içmek için gittiği kafeden geliyor.

Java kazara bulundu

James Gosling 1992’de Sun Labs’te çalışırken ekibiyle birlikte bir set üstü kutusu yapıyormuş. İşe C++’ı temizlemekle başlamışlar ve Javayı keşfetmişler.

Bu dili öğrenmenin maddi karşılığı büyük

Java geliştiricilerinin ortalama kazancı 83.975$. Dünyada yaklaşık 9 milyon Java geliştiricisi bulunmaktadır.

Java en popüler dil

Java programlama dilleri popülaritesi takip sitesi tiobe.com’un listesinde ilk sırada yer alıyor.

JUnit Testing Framework

JUnit Testing Framework şu an en fazla kullanılan Java teknolojisi. Bu teknolojinin sağlamlığı Java geliştiricilerinin %70’inin JUnit Testing Framework kullanmasından da anlaşılabilir.

Java şirketlerin vazgeçilmezi

Şirketlerin %95’i programlama için Java kullanıyor. Bu C ve diğer dillerin toplamından fazla bir oran.

Java ve Android

Java şu an 1 milyarın üzerinde akıllı telefonda çalışıyor çünkü Google’ın Android işletim sistemi Java API’larını kullanıyor.

Son“, Java’da gerçekten son anlamına gelmiyor

Son kelimesinin Java’da dört farklı anlamı var.

1) son sınıf – Bu sınıf genişletilemez

2) son yöntem – Bu yöntem geçersiz kılınamaz

3) son alan – Bu alan sabittir

4) son değişken – Bu değişkenin değeri bir kez atandıktan sonra değiştirilemez.

Java öğrenmek için okunması gereken kitaplar

  • O’Reilly Java kitaplarının çoğu
  • Effective Java – Joshua Bloch
  • Java Developer’s Almanac
  • Java Cookbook

Takip edilmesi gereken siteler

Java’da 3=12

Java’da System.out.println(1+2+” = “+1+2) çıktısında 3=12

Neden? Çünkü Java System.out ifadesinde bir stringe rastlarsa her şeye string muamelesi yapıyor.