film indir
Ocak
4th 2008
Java Dili ve J2EE Platformu

Posted under C# (csharp) & Programlama



Java her yerde geçen bir konudur, peki gerçekten nedir bu �java� ? Aşağıdaki bölümler, �java�nın nerelerde kullanıldığını, özelliklerini ve bir programlama dili olmasının yanısıra nasıl bir platform oluşturduğundan bahsetmektedir.

Java Programlama Dili Ve Platformu

Java oldukça basit, nesnel programlamaya dayalı, güvenli, dinamik ve yüksek performansa sahip bir programlama dilidir. Java�nın yaratıcıları C++ programlama dilini kendilerine model olarak seçmişler , gerekli görmedikleri özellikleri kaldırarak yeni özellikler ile Java�yı daha güçlü hale getirmişlerdir. C++ nesnel programlamaya dayalı son derece güçlü bir programlama dilidir. Ancak kimi zaman C++ �ın bu özellikleri problemler çıkarabilir. Yazılım geliştirme sırasında çıkan problemlerin zaman çok fazla zaman kaybına yol açması nedeniyle Java�da mantıksal hatalara yol açabilecek bir çok özellik daha iyi duruma getirilmiş, diğer programcıların da kodu daha kolay anlamaları için çalışmalar yapılmıştır. Bu çalışmalar yazılımın maliyetini düşürmede son derece önemli rol oynarlar ve bu yönüyle Java C ve C++ dillerinden ayrılır.

Java�nın Nesnel Programlama Yönü

Java nesnel programlamaya destek verir. Nesnel programlamada heşey bir nesnedir.Bir nesne veriler ve bu veriler üzerinde işlemler uygulayabilecek metodlardan oluşur. Bu metodlar nesne içerisinde korunabilir veya verileri koruyabilir. Nesnel programlamada kalıtımsallık da son derece önemli bir yer tutar. Kalıtımsallık sayesinde işinize yarayan başka bir metodun özelliklerini yeni yarattığınız metoda atayabilir ve üzerinde değişiklik yaparak hem baştan sona tekrar yazmak zorunda kalmaz hemde zamandan kazanabilirsiniz. Kalıtımın bir başka yararı ise anlaşılabilir olmasıdır. Nesnelerinizi sınıflarına göre düzenli bir şekilde ayırdığınızda , dokumantasyonu ve ilerki çalışmaların daha kolay yürümesini sağlarsınız.

Java�nın Özellikleri :

1. � struct, union ve pointer� data tipleri desteklenmez.

2. �typedef ya da #define� desteklenmez.

3. �multiple inheritance� desteklenmez.

4. �memory allocation� desteklenmez. Memory ayırma ya da boşaltmak için garbage collection denilen otomatik bir sistem bulunur.

5. Komut satırı argumanları C veya C++ �a göre Java daha farklı algılar.

6. �operator overloading� desteklenmez.

7. Stringler C ve C++ �a göre farklı değerlendirilirler ve Stringler için java.lang package içerisinde String class �ı bulunur.

Bir çok programlama dilinde, kaynak kod önce derlenir ve daha sonra çalıştırılır. Java derlenmesi ve çalıştırılması bakımından biraz farklıdır.

Derleme sırasında java kaynak kodu, bytecode�lara çevrilir. Platformdan (işletim sisteminden) bağımsız olarak bytecode�lar, java interpreter�i tarafından bilgisayarda java platformu üzerinde çalıştırılırlar. Derleme sadece bir kez gerçekleştirilir , ancak java programı her çalıştırıldığında java interpreter�i her seferinde devreye girer.

Java bytecode�larını Java Virtual Machine�in (Java VM) anlayabileceği kodlar olarak düşünebilirsiniz. Java VM her işletim sisteminde bulunur ve bytecode�ları anlayarak sistem üzerinde oluşturduğu Java platformu sayesinde java programının ya da java applet�ının çalışmasını sağlar. Bu sayede hangi işletim sisteminde yazılmış ve derlenmiş olursa olsun, java programınızı başka işletim sistemleri üzerinde de çalıştırabilirsiniz.

Örneğin, Unix�de derleyerek oluşturduğunuz ,bytecode dosyasını , Windows�da ya da Macintosh bir bilgisayarda çalıştırabilirsiniz. Bu nedenle java bytecode�ları �bir kere yaz, her yerde çalıştır� sloganı ile de anılırlar. Bunun anlamı, sisteminizde Java VM yüklü olduğu sürece, java programlama dili ile yazılmış aynı program Windows 2000 de,Linux�da ya da iMac�da çalışabilir.

Java Platformu

Bir programın çalıştığı donanım ya da yazılım ortamına platform denir. Windows 95/98, Windows 2000 , Linux, Solaris, MacOS gibi populer kullanılan platformlardan bahsettik. Bir çok platform da işletim sistemi ve donanımın birleşmesi ile oluşturulur. Java platformu, donanım tabanlı platformların üzerinde çalışan ve sadece yazılım platfomu olması yönüyle diğer platformlardan ayrılır.

Java platformunun iki birimi vardır.

· Java Virtual Machine (Java VM)

· Java Application Programing Interface (Java API)

 

Java VM java platformunun tabanını oluşturur ve çeşitli donanım tabanlı platformlar üzerine oturtulmuştur.

Java API ise , son derece yararlı özelliklere sahip hazır yapılmış yazılım parçalarından oluşur. Grafik ara birimi (GUI) bunlardan birisidir. Java API iki grupta toplanır. Birinci grupta ilgili classların kütüphane dosyaları,paketler, ikinci grupta ise ara birimler yer alır.

Figürde Java API�nin ve Java VM�nin donanım üzerinde bir platform oluşturduğu görülür.

Native code, derlendikten sonraki koddur. Derlenen kod belirli bir platformda çalışır. Platformdan bağımsız olmasıyla Java�nın biraz yavaş olabileceği düşünülebilir. Bununla birlikte, akıllı derleyeciler, iyi ayarlanmış interpreterlar, ve just-in-time bytecode derleyeciler performansı biraz daha arttırarak native koddan elde edilen başarıya yakın bir değer yakalayabilir.

JAVA NELER YAPABİLİR ?

Java web�e yeni bir akıcılık getirmiştir. Java programcıları çeşitli medya formatlarını ve veri protokollerini her java uyumlu browserda görünebilir hale getirmişlerdir. Düz html ve multimedya içeren sayfalara, çalıştırışabilir ve işlem yapılabilir içerik eklenmesine olanak sağlanmıştır.

Java programları applet olarak ya da uygulama olarak yazılırlar. Appletları java uyumlu browserlarda görebilirsiniz. Animasyonlar ve interaktif uygulamalar ile internette gezinirken muhtemelen karşılaşmışsınızdır. Ancak java programlama dili sadece akıllı ve eğlenceli appletlar yazmak için değil, aynı zamanda güçlü bir yazılım platformudur. Çeşitli API�leri kullanarak birçok program yazabilirsiniz.

Appletlarından farklı olarak, uygulamalar direk olarak Java platformu üzerinde çalışan programlardır. Server olarak bilinen özel bir çeşit uygulama, network üzerinde hem hizmet verir , hem de diğer client�ları destekler. Örneğin, Web Serverları, Proxy Serverları, Mail Serverları…. Diğer bir özel programda Java Web Serverlarında çalışan, cgi scriptleri gibi interaktif olarak web uygulamaları yaratmaya yarayan servlet�tır.

JavaBeans de Java platformuna bileşen teknolojisini sunar. JavaBeans API ile tekrar kullanılabilen, platformdan bağımsız olarak çalışabilen bileşenler yaratmak mümkündür. Bu bileşenleri applet, uygulama ya da karışık bileşenler olarak birleştirmekde desteklenmektedir.JavaBean componentleri Beans olarak bilinir.

Java 2D API , java programlarınızda 2D grafikler ile çalışma olanağı sunar. Java 2D API ile, her kalınlıkta çizgi çizebilir, şekilleri gradient ya da desen ile doldurabilir, text ya da grafikleri taşıyabilir, döndürebilir, ölçeklendirebilir, kesebilir, üstüste getirebilirsiniz.

Java Sound Engine, birçok farklı türde ses dosyasını ( AIFF, AU, WAV, MIDI, and RMF dosyaları ) applet ya da uygulamanız içerisinde çalmanızı sağlar.

RMI (Remote Method Invocation) sistemi sayesinde, bir Java VM�de çalışan java programı ile başka bir Java VM�de çalışan ancak uzaktaki java programları ile iletişimi sağlayabilirsiniz.

Java IDL ise JDK 1.2 den sonra desteklenen CORBA uyumlu dağıtımlı nesne teknolojisidir. Java IDL�yi kullanarak java uygulamaları ya da appletları web üzerinde herhangi bir yerdeki CORBA destekli dile ile yazılmış nesne ile iletişim kurabilir.

Trackback URI | Comments RSS

Yorum Yaz - Leave a Reply