Yukarıda da belirttiğim gibi, işlerin güllük gülistanlık olmadığına tekrar dikkat çekeyim istedim. Yoksa bol para ve bir sürü zeki adam şirketin emrinde olunca çözülmeyecek sorun var mıdır, pek fazla yoktur herhalde.
Generics mi özgün? Özgün sözcüğünü "unique" olarak da alsanız "original" olarak da alsanız bana pek doğru görünmedi dediğiniz.
IDE çok çok önemlidir, Eclipse ne kadar önemliyse Visual Studio.NET de bazı işler için o denli önemlidir ama yine etmeyin eylemeyin diyorum, biz burada dilin kendisinden bahsediyoruz ve onun gücünden, tartışmanın orta yerine Eclipse'i, NetBeans'i sokarsanız konu Java dediğimiz "dil"in gücünün dışında bir mecraya kayar, bunu doğru bulmuyorum.
Hah, bakın ne güzel demişsiniz. Küçük şirketleri ve süper hacker modunda 7/24 bilgisayar başında saç dökmeyen insanları hesaba katalım demişsiniz, tam da bu argümanlardan ötürü MIT'nin meşhur hocalarından Greenspun J2EE milletin yeteneklerini zorluyor, orta ölçekli işler için .NET kullanın diyor. Buyrun buradan yakın. Kriterimiz bu mu olacak?
Larry Wall yaşadığı sürece imkansız. Öte yandan JCP gibi demokratik bir sürece Microsoft'un katılmasını engelleyen ne? Ben bile katılabiliyorsam? (Hemen hatırlanması gereken bilgi, IE yüzünden küfrettiğimiz Microsoft, W3C üyelerinden ve öneri sunanlarından biridir).
Etmeyin eylemeyin. Sözlerinizi duyan da ANSI [1], ISO gibi oluşumlar yok sanacak. Bu kurumlarda öneriler, taslaklar, oylamalar yok sanacak.
Sözlerinizi duyanlar, vakti zamanında insanlar J2EE, EJB gibi standartlar var ne güzel, yaşasın deyip sonra da IBM'den falanca filancanın "Application Server"ına geçişte hiçbir sorun yaşanmamış, her şey güllük gülistanlık olmuş sanacak.
Java'nın bunu ortaya koyan ilk dil olduğu söylenmiyor (haklı olarak) ama bu dilin yapısında ciddi bir yenilik olarak lanse ediliyor. Bunu gören bir insan demez mi: Yahu bu JCP ne menem bir süreçmiş, nasıl bir organizasyonmuş da bunu şimdi akıl etmiş, bu kadar deneyimli programcı, bu kadar büyük şirket bir araya gelmiş de ancak şimdi mi bunu akıl edebilmiş? Üstelik madem sözdizimi bu şekilde basitleştirecekti buna çok daha önceden ağırlık verilmesi gerekmez miydi?
Burada hazır "dil"in gücünden bahsederken, bazen Java'cılardan şu tür itirazlar duyuyorum: Yahu ben Eclipse kullanıyorum, süper IDE, "get"terları, "set"terları otomatik olarak yazıyor sınıf içindeki üye değişkenlere bakıp. Benim tepkim: Dile bunu otomatik ürettiremeyince IDE'nin gücüne bel bağlıyorsunuz. Dili çok daha güçlü kılmak yerine IDE'nin işlevselliğinden dem vurup sanki dilin gücüymüş gibi gösteriyorsunuz.
Toz duman? Armutlarla elmaları mı kıyaslıyoruz? Bir yanda VM üzerinde çalışan Java teknolojisi, öte yanda doğrudan mimariye yönelik binary kod üreten C derleyicileri. Kaldı ki, yine standartlara uygun C kodunu alıp ister Windows için, ister GNU/Linux için, ister Solaris için derlersiniz ve güzel güzel çalıştırırsınız. (Basit bir örnek: Millet tamamen UNIX sistemler üzerinde geliştirilen ve gcc, make, vs. için yazılan GMP - GNU Multiple Precision library sistemini alıyor ve MS Windows üzerinde derliyor, çalıştırıyor filan ki burada küçük bir uygulamadan bahsetmiyoruz, epey ciddi, detaylı, büyük, sofistike bir sayısal işlem kütüphanesidir söz konusu olan).
JCP'dekilere bir öneri: Madem C#'tan esinleniyorsunuz bazı şeyleri, bari şu get/set'lerin "property" gibi görünüp "method" olarak çalışmasına izin veren sözdizimini de alsaydınız ya, böylece sürekli BirNesne.getBasitBirProperty(); ve BirNesne.setBasitBirProperty(12); yerine BirNesne.basitBirProperty ve BirNesne.basitBirProperty = 12; vs. yazılabilseydi.
Ya da aplikasyon da aplikasyon diye bir derdiniz varsa (enteresandır kongredeki sunumların ezici çoğunluğu masaüstü uygulamalardan/aplikasyonlardan değil, web programlamadan bahsediyordu) gider Qt kullanırsınız ve C++ ile yazdığını kodu ister GNU/Linux, ister MS Windows, ister bir cep telefonu üzerinde çalıştırırsınız.
12-13 yıldır geliştirilen bir işletim sistemi çekirdeğinden bahsetmişsiniz. Çok güzel bir örnek. Acaba demokratik mi değil mi? Torvalds, gelişmenin çanına ot tıkayan bir diktatör mü? JCP gibi bir süreçle işlese idi Linux dediğimiz çekirdek bugün çok daha iyi bir noktada mı olurdu?
Dil cephesinden bakalım, milyonların sevgilisi, kara gün dostu Perl dilinin 15 (yoksa 16 mı?) diktatörü (!) Larry Wall yüzünden Perl programcıları tutarsızlıkların pençesinde ölüm kalım savaşı mı veriyorlar, işleri bu anti-demokratik (mi acaba?)
Bunları masaya yatıralım ve tartışalım hep birlikte. Bazı şeyleri öyle hap gibi kabul etmeyelim, biraz içini deşelim, işin ucu nereye varıyor biraz spekülasyon yapalım.
Sanki o tarz bir dil standardı oluşturma biçimi olmasa onbinlerce Java programcısı "cık cık cık, bu dil demokratik süreçlerden geçmeden oluşuyor, o yüzden ben Java ile güzel paralar kazanmaktan vazgeçip bunu bir prensip meselesi yapıp demokratik süreçlerle geliştirilen bir dil+teknoloji kullanmaya başlayacağım bundan böyle" diyecek.
Java Kongresi İzlenimleri ( 35)
Standartlara karsi bu kadar isteksizlik neden acaba ? Standartlarin olmasi bu kadar kotu bisey mi ?
Terimler gayet guzel :) hepsi birer alternatif, daha bircok terim var ornegin JSF ye alternatif olan tapestry (kilim). Java dunyasi gayet hizli ilerliyor hemde standartlara ragmen ...