Updates:

Dost Yurdu Foruma Hoşgeldiniz...!!!

Java Nedir ?

Başlatan Dostyurdu, 20 Şubat 2018, 17:13:22

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

Dostyurdu

Java ™ platformu bilgisayar ağının varlığı da göz önüne alınarak uygulamaların/programların farklı işletim sistemleri üzerinde çalıştırılabilmesi düşüncesiyle geliştirilmiş yeni bir teknolojidir. Java teknolojisi kullanılarak aynı uygulama farklı ortamlarda çalıştırılabilir. Örneğin kişisel bilgisayarlarda, Macintosh bilgisayarlarda, üstelik cep telefonlarında.

Java ™ platformu hem programlama dili, hem de bir ortam olarak düşünülebilir. Programlama dili olarak, açık kodlu, nesneye yönelik (object-oriented), güvenli, sağlam, İnternet için elverişli bir teknolojidir denilebilir. Ortam olarak da orta katman (middleware) teknolojiler bulmak mümkündür.

Gerek Java programlama dili, gerekse bu dile bağlı alt teknolojiler, VB™ veya Borland Delphi™ gibi sadece belirli bir firma tarafından geliştirilmiş ürünler değillerdir. Java ve bu dile bağlı alt teknolojiler, Sun MicroSystems tarafından tanımlanmış belirtimlerden (specifications) oluşmaktadır. Bu belirtimlere sadık kalan her yazılım firması Java Sanal Makinası, kısaca JVM (Java Virtual Machine), veya Java programlama diline bağlı alt teknolojiler yazabilir (örneğin Application Server - Uygulama Sunucusu). Eğer bu belirtimlere sadık kalınmayıp standart dışı bir JVM veya Java programlama diline bağlı alt teknolojiler yazılmaya kalkışılırsa hukuki bir suç işlenmiş olur.

Peki belirtim (specifications) ne demektir? Sun MicroSystems, JVM veya Java programlama diline bağlı alt teknolojiler yazmak için belirli kurallar koymuştur; bu kurallar topluluğuna "belirtimler" denir. Örneğin biraz sonra ele alınacak olan çöp toplama sistemi (garbage collector)...

Çöp toplama sistemi daha önceden oluşturulmuş, ancak şu an için kullanılmayan ve bellekte boşu boşuna yer işgal eden nesneleri belirleyerek otomatik olarak siler. Böylece Java programcısı "acaba oluşturduğum nesneyi bellekten silmiş miydim?" sorusunu sormaktan kurtulurlar, ki bu soru C++ programlama dillinde uygulama yazan kişilerin kendilerine sıkça sorması gereken bir sorudur. Şimdi bir yazılım firması hayal edelim, adının ABC yazılım firması olduğunu varsayalım. Bu firma, eğer bir JVM yazmak istiyorsa, bu çöp toplama sistemini, oluşturdukları JVM'in içerisine yerleştirmeleri gereklidir. Çünkü Sun MicroSystems'ın belirtimlerinde, çöp toplama sistemi koşuldur! Eğer ABC firması üşenip de çöp toplama sistemini, oluşturdukları JVM'in içerisine yerleştirmezse hukuki bir suç işlemiş olur.

Şu anda en yaygın kullanılan JVM'ler, IBM ve Sun Microsystems'ın üretilmiş olan JVM'lerdir; ayrıca, HP, Apple gibi bir çok firmanın üretmiş oldukları JVM'ler de bulunmaktadır.

Java ile Neler Yapılabilir ?

Java diliyle projeler diğer programlama dillerine göre daha kolay, sağlıklı ve esnek şekilde yapılması mümkün olur. Kısaca göz atılırsa Java diliyle,

· GUI (7Grafiksel Kullanıcı Arayüzü) uygulamaları, Applet'ler

· Veri tabanına erişimle ilgili uygulamalar

· Servlet, Jsp (Web tabanlı uygulamalar).

· Dağınık bileşenler (Distributed components) (örneğin EJB, RMI, CORBA).

· Cep telefonları, Smart kartlar için uygulamalar.

· Ve daha niceleri...


Java Nasıl Çalışır ??




Java uygulamaları JVM tarafından yorumlanır; JVM, işletim sisteminin üstünde bulunur. Bu nedenle, Java uygulamaları farklı işletim sistemlerinde herhangi bir değişiklik yapılmadan çalışır. Böylece Java programlama dilinin felsefesi olan "Bir kere yaz her yerde çalıştır" sözü gerçekleştirilmiş olunur

JAVA Sınıflaması !

Java 'nın SınıfLanDırmaLarı ;

· Standart Java

· Komple (Enterprise) Java

· Gömülü cihazlar için Java (embedded devices)

· XML Teknolojileri

· Diğer Teknolojiler

geLişim EvreLeri !

1995
· Java teknolojisinin ilk çıkış yılı; ilk olarak Applet teknolojisinin dikkat çektiği yıllar.

1996
· Java Geliştirme Seti (JDK) v1.0 çıkartıldı. Temel seviyeli işlevleri içeren bir versiyon (örneğin soket programlama, Girdi/Çıktı (Input/Output), GUI (Graphical User Interface- Grafik Kullanıcı Arabirimi)

1997
· JDK 1.1 çıkartıldı. Bu sürümde Java GUI, veritabanı erişimi için JDBC, dağınık nesneler için RMI ve daha birçok yeni gelişmeler eklendi.

1998
· JDK 1.2 çıkartıldı.

· JFC/Swing yayınlandı- aynı yıl içersinde http://java.sun.com İnternet adresinden 500,000+ adet indirme (download) gerçekleştirildi.

1999
· Java teknolojisi J2SE, J2EE ve J2ME olarak 3'e bölündü.

· Java HotSpot (performans arttırıcı) yayınlandı.

· JavaServer Pages (JSP) teknolojisi yayınlandı.

· J2EE platformu yayınlandı.

· Linux üzerinde J2SE platformu yayınlandı.

2000
· JDK v1.3 çıkartıldı.

· Java APIs for XML teknolojisi yayınlandı.

2002
· JDK v1.4 versiyonu çıkarıldı (Merlin projesi).

· Java API for XML binding yayınlandı.

2003
· 2003 yılının sonuna doğru JDK v1.5 versiyonun çıkarılması planlanmaktadır (Tiger projesi).

Java'nın Başarılı Olmasındaki Anahtar Sözcükler !

1. Nitelikli bir programlama dili olması

· C/C++ da olduğu gibi bellek problemlerinin olmaması.

· Nesneye yönelik (Object Oriented) olması.

· C/C++/VB dillerinin aksine doğal dinamik olması.

· Güvenli olması.

· İnternet uyg. için elverişli olması. (Applet, JSP, Servlet, EJB, Corba, RMI).

Herşey Nesne !

Her programlama dilinin kendine has veri yönetim şekli bulunur. Java platformunda çalışan bir uygulamada, çalışma sırasında nesneler oluşturulur. Burada ki soru bizim nesnelere doğrudan olarak mı? Yoksa onlara dolaylı bir şekilde mi bağlantı sağlayıp kullandığımızdır. Java programlama dilinde herşeye nesne olarak davranılır. Herşeyin nesne olmasına karşın bu nesnelerin kullanılması için referanslara gereksinim duyulur.

Örneğin, elimizde bir maket uçağı olsun; nesne olarak düşünelim... Bu maket uçağı denetlemek amacıyla bir de kumanda cihazının, yani referansın olduğunu düşünelim. Bu maket uçağı havada sağa veya sola döndürmek için elimizdeki kumanda cihazını kullanmak zorundayız; benzer şekilde havalandırmak veya yere indirmek için kumanda cihazından yararlanırız. Burada dikkat edilmesi gereken unsur kumanda cihazından çıkan emirlerin maket uçağı tarafından yerine getirilmesidir.