Java'nın Tarihçesi //ishakonc

ishakonc

Uzman üye
8 Ocak 2017
1,517
1
Linux
ext


Javanın Tarihçesi;
7NEXyW.gif


Java 1995'li yıllarda Solaris İşletim sistemini,SPARC ıda üreten bir Amerikan Şirketi olan Sun Microsystem mühendislerinden James Gosling tarafından geliştirmeye başlamıştır.Java dili ismini,Javayı geliştiren 5 adet mühendisin bir kafede aralarında konuşurken içtikleri kahvenin isminden alınmıştır.

Teknolojinin ilerlediği 1990'li yıllarda programlama,bilgisayarın haricinde gömülü sistemlerde ve temeli atılan mobil cihazlarda da kullanılıyordu.Programcılar ise bilgisayarın doğuşundan beri her yerde çalışabilecek, az ve verimli kod yazmaya olanak sağlayan bir dil icat etmeye odaklandılar.
Java haricinda kalan tüm diller derlendiklerinde makine diline çevrilirler,Bu da yazılan programların tek bir mimariye bağımlı olmalarına neden olur ancak Java dilinde yazılan programlar derlendiklerinde direk makine diline değil bytecode adı verilen ara makine diline çevrilirler.Ancak bytecode halindeki dosyalar herhangi bir işletim sisteminde direk olarak çalıştırılmazlar.Bu ara kodun tam olarak derlenmesi için kullanılacak bilgisayarlarda Java Sanal Makinesi adındaki mekanizmanın yüklü olması gereklidir.
Javanın yukarıdaki özelliği aslında diğer dillere göre olan en büyük avantajıdır.
Bu özelliği sayesinde Java,"Bir kere yaz her yerde çalıştır" özelliğine sahip tek dildir.Yıllardan beri istenilen bu özelliği fazlasıyla sağlayan Java programlama dili ise 1995 yıllarından günümüze kadar büyük bir gelişim sağlamış ve hiç şüphesiz sağlamaya da devam edecektir.

YDmVNo.png


"Java;
Kod:
outer:
for (int i = 2; i < 1000; i++) {
    for (int j = 2; j < i; j++) {
        if (i % j == 0)
            continue outer;
    }
    System.out.println (i);
}

ByteCode;
Kod:
0:   iconst_2
1:   istore_1
2:   iload_1
3:   sipush  1000
6:   if_icmpge       44
9:   iconst_2
10:  istore_2
11:  iload_2
12:  iload_1
13:  if_icmpge       31
16:  iload_1
17:  iload_2
18:  irem
19:  ifne    25
22:  goto    38
25:  iinc    2, 1
28:  goto    11
31:  getstatic       #84; // Field java/lang/System.out:Ljava/io/PrintStream;
34:  iload_1
35:  invokevirtual   #85; // Method java/io/PrintStream.println:(I)V
38:  iinc    1, 1
41:  goto    2
44:  return
Olarak değişir."

(Tırnak İçindekiler alıntıdır. // https://en.wikipedia.org/wiki/Java_bytecode )


YDmVNo.png
 
Ü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.