Java ve Java Programlama Dili

Java ve Java Programlama Dili-1

Java varolduğu on yıldan bu yana, kendisi ve etrafındaki teknolojiler ile bugün her türlü yazılımın ve servisin verilmesinde kullanılıyor. Bugün Java’ya heryerde rastlamak mümkün, masaüstü-iş istasyonu ve sunucu bilgisayarlarda, cep telefonlarında, cep bilgisayarlarında, elektronik ve beyaz eşyalarda ve hatta uzayda.

Küçük cihazlarda, gömülü olarak çalışması için tasarlanmış olsa da, o zamanlar için pek yayılamamıştı, Web’e sıçradı Java ve Applet’leri ile o zaman dikkatleri üzerine çekti. Java, bilgisayar ağlarını etkin şekilde kullanabilen, güçlü ve kolay bir programlama ortamı sunuyor.

Java Teknolojisi, her biri kendi alanında uzmanlaşmış olarak, birkaç parçaya ayrılır, bunları http://java.sun.com  adresinde inceleyebilirsiniz.

Bu yazıda J2SE üzerinde duracağız. Java2 Standart Edition, masaüstünde uygulama geliştirmek için gereken herşeyi sunar.

Java Language (Java Dili): Java Teknolojilerini kullanmak için hazırlanmış programlama dilidir. Java, Nesne-Yönelimli, basit, temiz ve etkin bir programlama dilidir. Java Programlama Dili’ni bu yazı dizisi içerisinde inceleyeceğiz.

Development Tools (Geliştirme Araçları): Java uygulaması geliştirme aşamasında size yardımcı olan programlardır. Java, derlenmiş byte-code JVM aracılığıyla çalıştıran bir komut-satırı uygulamasıdır. Javac, yazılan programınızı derleyen, komut-satırı uygulamasıdır. Javadoc, program kodları içerisine yerleştirilmiş dökümantasyon ekleriyle birlikte, kod dökümantasyonu hazırlayan bir komut-satırı uygulamasıdır. Jar, java arşivleri oluşturmayı ve kullanmayı sağlayan bir komut-satırı uygulamasıdır.

User Interface Toolkits (Kullanıcı Arabirimi Araç Setleri): Java’da grafik ile ilgili işler için kullanılan araçlardır. AWT, Java GUI’sinin temelini oluşturur, çizim, olaylar ve ekran ile ilgili işlerden sorumludur. Swing, Java kullanıcı arabirimleri için bileşenler sunar. Düğmeler, listeler, mesaj kutuları ve daha birçok kontrol, Swing paketiyle gelir. Java2D, geliştirilmiş iki boyutlu çizim kütüphanesidir, basit çizimlerden, karmaşık çizimlere kadar geniş yelpazede bir çözümdür.

Integration Libraries (Entegrasyon Kütüphaneleri): Java’nın diğer teknolojilerle iletişime geçmesine olanak sağlayan kütüphanelerdir. Java IDL, Java’ya Standartlara dayalı, web-destekli, uzak ağlar üzerinden iletişim olanağı sağlayan CORBA’yı Java’ya ekler. CORBA destekleyen herhangi bir programlama dili C++, Delphi veya .NET/Mono ile uzaktaki herhangi bir Java programıyla etkileşim kurulabilir. JDBC, Java’nın veritabanı erişim standardıdır. Veritabanı üreticileri, JDBC standardına uygun erişim kütüphaneleri yazarak, geliştiricilere sunarlar, böylece Java tabanlı bir uygulama, uygun JDBC sürücü kütüphanesiyle istenen veritabanına bağlanabilir. RMI, Uzak Method Çalıştırma, birbirinden uzakta bulunan Java tabanlı uygulamalar arasında iletişim sağlar.

Java Virtual Machine (Java Sanal Makinesi): Derlenmiş Java byte-code’u çalıştıran, Java teknolojisinin kalbidir. JVM, masaüstü kullanımı için, hızlı başlama ve az bellek kullanımı için optimize edilmiş Client VM ile sunucular için hızlı çalışmak, kısa sürede tepki vermek üzere optimize edilmiş Server VM olarak iki çeşittir.

Sun, Java’yı belli kurallar tanımlayarak, bu kurallar dahilinde isteyen kuruluşların JVM yazmasına izin vermiştir. BEA JRockit, IBM ve Apple’ın kendi kullanıcılarına sunduğu JRE ve JDK’lar mevcuttur.

Sun, şu anda Java’yı geliştiren tek firma değildir, 1998 yılında kurulan Java Community Process birlikteliğine üye şirketler, vakıflar, üniversiteler ve bireyler, Java’nın gelişiminde etkin rol oynamaktadırlar. Bunlar arasında, Adobe, Apple, BEA, Borland, Cisco, Google, IBM, Intel, Nokia, Novell, Oracle, Philips, RSA, SAP, Sony Ericsson, Vodafone ilk aklıma gelenler, tüm liste için http://jcp.org/en/participation/members/ adresine bakabilirsiniz.

JCP üyeleri, Java Specification Request (JSR) adı verilen, Java’ya yeni birşey katmak için yada, bazı şeyleri değiştirmek için bir belge hazırlarlar, bu belge JCP üyelerine sunulur ve bir oylama yapılır. Oylama sonucunda hazırlanan belge ve içerdiği geliştirmeler Java’ya eklenir.

Java Yazılım Geliştirme Seti

Java Yazılım Geliştirme Seti, Java yazılımları geliştirmekten, dağıtmaya hazır hale getirmeye kadar, bu süreçte yardımcı olacak araçlar sunar. Kodlarınızı derlemeniz için bir derleyici (javac), paketlemeniz için bir arşiv aracı (jar) bunlardan sadece ikisidir.

Java Yazılım Geliştirme Seti’ni kurduğunuzda, sisteminize Java programı geliştirmek ve çalıştırmak için gereken herşey yüklenir. Java ile yazılan programlar, Java Derleyicisi (javac) ile derlenir, oluşan .class uzantılı dosya, JVM’in çalıştırmakla yükümlü olduğu, byte-code adı verilen bir dosyadır. Derleme sonucunda bir Windows .exe dosyası oluşması beklenemez, Java platform bağımsızlığını, platforma özel kod üretmeyerek sağlar. Oluşan Java Class’ı (.class byte-code dosyası) çalıştırmak için, Java Geliştirme Seti veya Java Çalıştırma Ortamı ile gelen "java" isimli programı kullanılır.

Java Çalıştırma Ortamı

Bir Java Çalıştırma Ortamı (JRE) yüklediğinizde, program geliştirme araçları dışında kalan herşeye sahip olursunuz. Java programlarını çalıştırmak için ihtiyacınız olan başka bir şey yoktur. Programın çalıştırılacağı makinede JRE yüklü olması yeterlidir, yazdığınız programı kullanıcılara bir kurulum uygulaması olarak verebilirsiniz. Örneğin, install4j yada izpack adlı Java kurulum araçları, yazdığınız programınızı çeşitli platformlar için kurulum programları hazırlayarak, programınızı kolayca dağıtmanızı sağlarlar.

Bu kurulum araçlar, sistemdeki JRE durumuna bakarak, kurulumu gerçekleştirir, belirlenen yerlere kısayollar oluşturur. Java ile isterseniz platforma bağlı uygulamalar da hazırlayabilirsiniz, bir DLL’i veya SO’i Java programınızla kullanabilirsiniz. Java Çalıştırma ortamı size Java Virtual Machine (Java Sanal Makinesi) ‘i beraberinde sağlar. JVM, Derlenmiş Java byte-code’u çalıştıran, Java teknolojisinin kalbidir.

Client VM, masaüstü kullanımı için, hızlı başlama ve az bellek kullanımı için optimize edilmiştir. Server VM sunucular için hızlı çalışmak, kısa sürede tepki vermek üzere optimize edilmiştir.

Kaynaklar :

http://java.sun.com http://jcp.org/en/participation/members/

Bu web sitesi ücretsiz olarak Bedava-Sitem.com ile oluşturulmuştur. Siz de kendi web sitenizi kurmak ister misiniz?
Ücretsiz kaydol