Java Nasıl Çalışır?

kick_boxcu_19

Yeni üye
8 Ara 2006
5
0
CeHeNNeM
Java Nasıl Çalışır?
Bir Java yazılımı şu şekilde geliştirilir:

Programcı Java kodunu yazar.
Bu kod bir Java derleyicisi ile derlenir. Sonuçta bytekod adı verilen bir tür makine kodu ortaya çıkar. Platform bağımsızlığını sağlayan şey bytecode'dur. Çünkü bir kere bytecode oluştuktan sonra yazılım sanal makine iceren tüm işletim sistemlerinde çalışabilir.
Bu byte kod Java Virtual Machine (Java Sanal Makinesi) tarafından adım adım işletilir.
Bu adımları inceleyelim::


Java Kodunun Yazılması [değiştir]Java nesneye yönelik bir dil olduğundan tüm yazılım sınıflar ve nesneler üzerinden yürütülür. Sınıflar uygulamadaki nesnelerin tanımlandığı kod parçalarıdir. Java'da her bir sınıf bir dosya içerisinde yer alır. Dosyaların uzantıları .java şeklindedir. Dosya adı ise içinde tanımlanan sınıf ile aynıdır. Örneğin* BenimSınıf.java gibi.


Çalıştırma ve Java sanal makinesi [değiştir]Sanal makine donanımdan bağımsız yazılım geliştirme ihtiyacına cevap verme amacıyla geliştirilen bir teknolojdir. Java'nın temel felsefesi olan "bir kere yaz* her yerde çalıştır" sanal makine sayesinde varolmuştur. Sanal makineyi bir yönden bir tür hayali bir mikroişlemci gibi düşünebiliriz. Gerçek tüm mikroişlemciler (Intel Pentium* AMD Athlon* Sun Sparc vs) belirli bir grup komutu işlemek üzere tasarlanmıştır. Bu komutlara işlemcinin komut kümesi adı verilir. Örneğin x86 komut kümesi gibi. Tüm yazılımlar çalışabilmek için önce bu komut kümesine dönüştürülür* daha sonra işlemci bu komutları sıra ile gerçek işlemci komutlarına dönüştürüp işletir. Java Sanal makinesi de Bytekod komut kümesini tıpkı işlemci gibi adım adım işletir. Java'nin interpreted bir dil olarak adlandırılmasının nedeni budur.

Java'nın doğrudan bytecode çalıştırması performansının düşük olabileceği izlenimini verebilir. Gercekten Java'nin ilk yillarinda isletim basarimi cogu uygulama icin kabul edilemeyecek kadar kotu idi. Ancak* JVM tasarımı geçen 10 yılda çok değişmiş ve geliştirilmiştir. Şu anda Java'nın performansın ın çoğu alanda C++'ın performansına eş bir seviyede oldugu iddia edilmektedir. Her ne kadar C- C++ dilleri de tasinabilir bir yapida olsa da bu ozellikleri Java ile kiyaslanamayacak kadar geri bir yapidadir. Eğer sözkonusu dil C++ olsaydi üç ayrı kod ya da kodda üç ayrı #ifdef vs tanımı* üç ayrı obje dosyası oluşturulması gerekirdi ve çoğu uygulamada C++ projesi sadece tek platforma destek verirdi (win32 gibi)
 

ALACA

Yeni üye
3 Mar 2007
2
0
minnet

Sağol dostum şimdiye kadar forumlarda şunu gördüm seninde içinde yer aldığın az sayıda kişi üretiyor,paylaşıyor ve diğerleri emeğe saygı duymadan bunları başka yerlerde yayınlıyor sözde onlar yapıyor.

Ellerine sağlık ben programlama dillerini öğrenmek istiyordum senin bu emeğin beni biraz daha hırslandırdı.
Umarım bu programa dillerinden birkaçını öğrenip sizlerle programllama konusunda çözümler ararız.

:yo Tekrar eline sağlık Başarılar:yo
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.