Java Nedir?

Sun Microsystems tarafından geliştirilen Java veya Java platformu nedir, ne işe yarar, nerelerde kullanılır ve Java teknolojileri ile ilgili bilgiler yer alıyor.

Java nedir?

James Gosling tarafından 1995 yılında geliştirilmeye başlanmış işletim sisteminden bağımsız olarak uygulama geliştirmek için kullanılan programlama dili ve yazılım geliştirme platformudur.

C/C++ sözdizimine benzeyen, NYP-OOP yöntemine göre yazılım geliştirmeyi sağlayan basit ve güçlü bir dildir.

Java API sayesinde soket programlama, paralel programlama, veri yapıları gibi işlemleri kolay bir şekilde yapmayı sağlar.

JVM ile WORA (Write Once Run Anywhere) olarak adlandırılan platform bağımsız olarak geliştirmeyi sağlar.

Bu yapısından dolayı ayrıca Java platformu olarak adlandırılır.

JVM nedir?

JVM (Java Virtual Machine) önceden tanımlanmış byte-code olarak adlandırılan komutların çalıştırılmasını sağlar.

Java ile geliştirilen herhangi bir uygulama ilk olarak Java Compiler (javac) ile byte-code olarak adlandırılan JVM’in anlayacağı komutlara dönüştürülür.

JVM’in anlayacağı komutlara dönüştürülen komutlar JVM tarafından farklı işletim sistemlerinde çalışır hale gelir.

Bu yapı sayesinde byte-code kurallarını sağlayan başka dillerde geliştirilebilir.

Örneğin; Birçok programlama dilinde temel işlemleri yapan anahtar kelimeler (if, else, switch, for, while vb.) aynı işlevi yerine getirir.

Ancak bazı programlama dillerinde bu yazım farklılık gösterir.

İşte burada bu işlevin yazımı farklı olsada byte-code sayesinde işlevin yapılması sağlanır.

Bu yapının olması ayrıca geliştirilen kütüphanelerin diğer JVM dilleri tarafından da kullanılmasını sağlar.

NOT: Scala, Kotlin, Apache Groovy, JRuby, Jython gibi programlama dilleri JVM kullanılarak geliştirilmiştir.

JDK nedir?

JDK (Java Development Kit) içerisinde Java Compiler, JVM, JRE vb. yapıları içerisinde barındırın bir pakettir.

Bu paketin kurulumu ile Java komutları derlenerek JVM tarafından çalıştırılabilir hale getirilir.

Aşağıdaki Java komutlarının çalıştırılması için herhangi bir editör ile MerhabaJava.java olarak kayıt edin.

İşletim sistemi Path ayarları yapıldıktan sonra komut yorumlayıcısına javac MerhabaJava.java yazarak derleyin.

Derleme işleminden sonra aynı klasör/dizinde MerhabaJava.class dosyası oluşacaktır.

public class MerhabaJava {

    public static void main(String[] args) {
        System.out.println("Merhaba Java");
    }

}

JVM komutlarını çalıştırmak için komut yorumlayıcısına java MerhabaJava yazarak derlediğinizde ekrana “Merhaba Java” yazacaktır.

JRE nedir?

JRE (Java Runtime Environment) Java komutlarını çalıştırmak için kullanılan bir pakettir.

Java API içerisinde yazılım geliştirmeyi kolay hale getirmek için çeşitli kütüphaneler yer alır.

Örneğin; Bilgisayar bilimlerinde yer alan yığın-stack, kuyruk-queue, bağlı liste-linkedlist gibi çeşitli veri yapıları yer alır.

İhtiyaç duyulduğunda bu veri yapılarının öğrenilmesi ve yazılması gerekir.

Java API içerisinde yer alan bu veri yapıları sayesinde tekrar yazmaya ihtiyaç duymadan hızlı bir şekilde uygulama geliştirmeyi sağlar.

Ancak Java API içerisinde yer alan kütüphanelerin öğrenilmesi zaman alabilir.

Çünkü içerisinde Soket programlama, Paralel programlama, kriptolama gibi sayısız kütüphane yer almaktadır.

Java API içerisinde fazla kütüphane olduğundan Java SE, EE ve ME olarak üç gruba ayrılır.

Java SE nedir?

Java SE (Standard Edition) içerisinde Temel Java komutları, AWT, Swing gibi kütüphaneler yer alır.

Java ile uygulama geliştirmek için Java SE yapısının iyi bilinmesi gerekir.

Java EE nedir?

Java EE (Enterprise Edition) Java ile kurumsal uygulamalar geliştirmek için kullanılan Servlet, JSP, JSTL, EJB, JAX-WS gibi kütüphaneler yer alır.

Java ME

Java ME (Micro Edition) cep telefonları, küçük elektronik eşyalar gibi az enerji tüketen cihazlar için içerisinde sınırlı kütüphanelerin yer alan sürümdür.

Diğer…

Java programlama dili platform bağımsız olarak uygulama geliştirmesinden ve C/C++ içerisinde yer alan bellek yönetimi gibi işlemleri kendisi yaptığından dolayı Apache, Eclipse gibi topluluklar tarafından destek görmektedir.

Ayrıca içerisinde yer alan JNI sayesinde C/C++ ile geliştirilen uygulamalar Java’ya dahil edilebilmektedir.

Java’nın esnek bir yapısı olması geniş bir topluluk desteği popüler olmasını sağlamıştır.

Ancak bu durum benzer işlemi yapan uygulamaların farklı isimlendirmeye sahip metotları olmasına neden olmuştur.

Bundan dolayı JCP (Java Community Process) olarak adlandırılan ve Java standartlarını belirleyen bir topluluk yer almaktadır.

Örneğin; Java ile REST tabanlı bir kütüphane yazılmak istendiğinde JSR 370 olarak adlandırılan şartnamenin kullanılması faydalı olacaktır.

Java ile geliştirilen komutlar ilk olarak JVM yapısına daha sonra makine koduna çevrildiğinden C/C++, Assembly gibi alt düzeyli dillerden yavaş olabilir.

JAVA Derslerine buradan ulaşabilirsiniz.

Hayırlı günler dilerim.

Yusuf SEZER

Yusuf SEZER

Computer Engineer who interested about web technologies, algorithms, artificial intelligence and embedded systems; constantly exploring new technologies.


Bunlara'da bakmalısın!