O degil de, enterprise Web Development icin alternatifsizdir. Butun buyuk sirketler java kullanirlar, ya da yeterince buyuk degillerdir. Microsoft haric tabi, onun derdi baska. Yazik csharp a, nasil enum tanimliyorsunuz.
ekşide olduğu gibi buradada babasının diliymiş gibi savunan vatandaşlar var. amele sümüğünün teki c++ ile javayı kıyaslıyordu. at yarrağı kıyaslamak için yüzlerce etken var bunun farklı platformları var zartı var zurtu var desende boş gerizekalı inanmış bi kere gelişime kapalı ve bu çok da sikimde. yıl olmuş 2014 adam hala çıkıp web programlamada kullanılabilecek en iyi dil java diyor. yani bu adama ne denir ki amınakoyim. ee neden peki sebepler sun bana desen bi sik diyemez çıkmış savunuyor işte mal ne yaparsın.
Inanilmaz mantik urunlerini yayimlayan kazmalarin hakkinda yorum yaptigi dildir.
Programlama dilini kim gelistirirse gelistirsin, en sonunda satin alan firma hangisiyse aslinda o gelistirmistir.
Ozkan Kuruyemis Oracle'i 2078 yilinda satin alirsa Java'yi da Ozkan Kuruyemis gelistirmis oluyor. Iste ben bu mantiga sapka cikaririm.
Kaynak da vereyim de , okuma bilenler aydinlansin.
"Java was originally developed by James Gosling at Sun Microsystems" - Gosling, James; Joy, Bill; Steele, Guy L., Jr.; Bracha, Gilad (2005). The Java Language Specification
Isallah Ozkan Kuruyemis Oracle'i satin alir da Turklerin de gelistirdigi bir programlama diline sahip oluruz. Bunu neden daha once hic dusunmedik.
ayrıca oracle tarafından geliştirildiğini bilmeyenlerin kullanmasını önermediğim dil, çünkü oracle ürünleri ile eşgüdümlü çalışırsa tadından yenmez.
(bkz: oracle ın sun microsystems ı satın alması)
(bkz: mağara adamı)
bazi gomulu metodlari override ederek uzun gelen kodlari yazmayabilirsiniz.
System. hede. hedo('hihi'); gibi yazimlar yerine
hedocan('hihi'); seklinde yazilabilir. tabii bu uzun yazilan ifadeler amator programcilar icin cok can sıkıcı bi hal almakta. ilk ogrendigim yillarda benim icin de ayni durumdaydi.
simdilerde java canimi sikar oldu acikcasi scala kullanilir mi bilemedim kararsiz kaldim. ne var ki gibi dusunebilirim.. javafx ile harika uygulamalar yapabiliyorum asinalik olarak da android geliyo aklima. intellij idea ile kullanimi pek bi harika.
netbeans 7. 1 surumu icin linux dagitimlarinda ubuntu degil de lubuntu, xubuntu gibi dagitimlarda sorun var. awt ve swing acilmiyo loading diyip duruyo bu bi bug.. cozulemiyo 7. 3 surumu gayet iyi ama hala yavas ide.. eclipse'e nazaran..
bir de c# ya da vb. net gibi . NET teknolojileri kadar yaygin anlamda amatorlerin arayacagi dokumanlar yoktur bulamazsiniz o da sizin arastirmaniza ve sonucta oracle sitesinden aldiginiza baglidir. ornegin; c# ile media player yapimi vs. java ile media player yapimi gibi ama yine de java'yi bu yuzden sevdim ben.
Insanların şüphe ile yaklaştıkları cross-platform bir dildir. Var olan programlama dilleri arasında Object-Oriented programming felsefesi ile çalışacak bir kimse için en başarılı alt yapıyı sunan dildir. Javada her class Object class'ını extend ederek var olur, yani her şey aslında bir objedir. Encapsulation mükemmel bir şekilde sağlanır. Ayrıca C++'daki gibi birden fazla class'ı extend ederek tangling problemine yol açmaz. Ayrıca Java da en az C++ kadar pointerları kullanır, yalnızca bu pointerlar ile kendi garbage collection mekanizması ilgilendiğinden ötürü programmer tercihlerinden bağımsızdır. Bu küçük ve orta ölçekli programlar için dezavantaj gibi görünür. Sonuçta C++'da çağırılan fonksiyonlarda Pass by Value ya da pass by reference seçeneği yazılımcıya aittir, javada ise belirli bir standart vardır. istemeniz durumunda dahi memory leak'a yol açmak zordur. Çok geniş bir library seçeneği mevcut olduğundan aklınıza gelebilecek , işlemcisi olan her makineyi programlayabilirsiniz. Hız meselesi jdk 1.5 'ten sonra artık bir problem olmaktan çıkmıştır. Şu an tümüyle java ee ile yazılan ecommerce sitemizdeki hız oranı dünyada amazon.com 'dan sonra ikinci sırada. ( Apache server, weblogic, JMS vs vs ile birlikte. ) Yani PHP ya da herhangi başka bir opsiyonu yalnızca hızlı olacağı düşüncesi ile seçmek bence pek de mantıklı değildir. Framework konusunda da bence alternatifsizdir. Struts , Spring ve Hibernate ile neler yapılabilineceği gerçekten insaları şaşırtır. Ayrıca programming paradigmaları da ( her ne kadar OO temelleri izlense de java üzerinde ), bu tarz frameworkler ile mümkündür. Aspect Oriented Programming için Spring'in pointcut mekanizmaları gayet başarılıdır. Programlama dilleri artıları ve eksileri ile gelir ve projeye göre biçimlenir. Ancak bana kalırsa herhangi bir ( çok low level olmadığı takdirde ) program parçası yoktur ki java ile yazılması tamamiyle yanlış bir tercih olsun. Ben birisine sıfırdan software engineering öğretecek olsaydım muhtemelen C'den ya da C++ 'dan başlardım ki, işin daha low level kısımlarına aşina olup arka planda Java'nın neleri başardığını görebilsin diye. Ancak yeni başlayan kimseler cout << "ıvır zıvır"; şeklinde yazabilecekleri kodu javada system.out.println("ıvır zıvır"); şeklinde yazdıklarında "ne oluyor mınaski" oluyorlar. Mesele arkadaki mantık. std io include edildikten sonra cout ile yazabilmek anlaşılabilir bir kod değildir halbuki ancak yeni başlayan hello world kullanıcısını javaya karşı biraz ürkütür bu tarz durumlar. Halbuki mentalite anlaşıldığında, önce system objesi, sonrasında onun out ( i/o 'daki o kısmı yani ) objesi, sonra da onun println metodu üzerinde ( ki bu pek çok obje üzerinden override edilebilir )çağırıldığında ve yazılımcı bütün bu senaryonun farkına vardığında bir şeyler parlamaya başlar zihinde. O zaman cout mantıksız gelmeye başlar.