Son 30 yılda canlı bir Java topluluğu oluştu. Yıl boyunca Almanca konuşan bazı temsilcilere deneyimlerini sordum. Yanıt çok büyüktü. Katılan herkese teşekkür ederiz. Bu ikinci bölümde, Bernd Müller (JavaLand program komitesi ve Eastphalian Üniversitesi'nde profesör), Heinz Kabutz (Java Şampiyonu ve Java Uzmanı Haber Bülteni), Patrick Baumgartner (Java Şampiyonu, JUG İsviçre ortak organizatörü), Wolfgang Weigend (Oracle Almanya) ve Gernot Starke (arc42'nin yazarı ve kurucusu) görüşlerini veriyor.
Duyurudan sonra devamını okuyun
Embarc Software Consulting GmbH'de yazılım mimarı, danışman ve eğitmen olarak Falk Sippach her zaman katılımcılarında, müşterilerinde ve meslektaşlarında ateşlenecek tutku kıvılcımını arıyor. 15 yılı aşkın bir süredir ağırlıklı olarak Java ortamında çevik yazılım geliştirme projelerine destek vermektedir. Topluluğun aktif bir parçası olarak (JUG Darmstadt'ın ortak organizatörü), aynı zamanda makalelerde, blog gönderilerinde, ayrıca konferanslardaki konuşmalarda veya kullanıcı grubu toplantılarında bilgilerini paylaşmayı seviyor ve çeşitli uzmanlık etkinliklerinin organizasyonunu destekliyor. Falk @sippsack'ta tweet atıyor.
Java, birçok geliştiriciyi BT dünyasına ilk adımlarından bu yana etkiledi ve bu süre zarfında inişler, çıkışlar ve birçok yeniden keşif yaşadı. Aşağıdaki cevaplar kişisel başlangıçları, eğitim deneyimlerini, kritik anları ve Java'nın günümüzdeki yazılım geliştirmedeki rolünün bir sınıflandırmasını yansıtmaktadır. Son olarak ileriye bakmaya cesaret ederler: Kendi gelişimlerine yönelik öneriler ve gelecek yıllarda Java'ya yönelik beklentiler.
Java ile ilk kez ne zaman ve hangi sürümle tanıştınız?
Bernd Müller: 1996, 1.0
Heinz Kabutz: 1.0
Patrick Baumgartner: İlk Java ile öğrenimim sırasında karşılaştım, ardından Java 1.4 ile karşılaştım. Dil o zamanlar özellikle kurumsal dünyada zaten yaygın olarak kullanılıyordu ve istikrarlı ve güvenilir kabul ediliyordu. Beni özellikle etkileyen şey platformun bağımsızlığıydı: Kodun farklı işletim sistemlerinde herhangi bir değişiklik yapmadan çalıştırılmasını mümkün kılan ünlü “Bir Kez Yaz, Her Yerde Çalıştır” yaklaşımı.
Duyurudan sonra devamını okuyun
Wolfgang Weigend: 1996 sonlarında Texas Instruments Software'de kıdemli sistem danışmanı olarak Java programlama diliyle ilk kez tanıştım. İlk Java sürümüm JDK 1.0'dı. Temmuz 1997'nin başında Frankfurt am Main'deki Sun Microsystems'de kıdemli sistem danışmanı olarak başladım ve aynı yıl Deutsche Bahn'ın BT departmanıyla birlikte TLC GmbH'de (DB AG / DB Systel GmbH) Java teknolojisini tanıttım.
Gernot Starke: Java'nın “piyasaya sürülmesi” vesilesiyle, Sun Microsystems ve Köln'deki danışmanlık şirketi “Schumann AG”nin işbirliğiyle Köln'deki Object Reality Center'ı yönetebildim. 1995/1996 yılıydı ve Java, Amerika Birleşik Devletleri'nde büyük bir tantanayla yeni duyurulmuştu. O sıralarda ilk Alman Java projesini de (Sun ve o zamanki HypoVereinsbank Münih ile birlikte) inşa ettik ve üretime aldık.
Geriye dönüp baktığınızda Java dili veya ekosistemiyle ilgili en iyi deneyiminiz neydi?
Heinz Kabutz: Üzerine harika haber bültenleri yazabileceğiniz, sonsuz özelliklere sahip bir dil.
Patrick Baumgartner: Kesinlikle konferanslar ve koridor yolu! Java yalnızca bir dil değil, aynı zamanda son derece ilgili ve ilham veren insanlardan oluşan küresel bir topluluktur. Sık sık bahar temalı konferanslara katılıyorum ve benzer düşüncelere sahip insanlarla teknik tartışmalara girme, yeni fikirler geliştirme ve diğer insanların deneyimlerinden öğrenme fırsatı buldum. Yıllar geçtikçe bu toplantılar sadece değerli profesyonel temasların değil, aynı zamanda gerçek dostlukların da doğmasına yol açtı. Konferanslarda tanıdık yüzlerle tanışmak ve genellikle bir Java Kullanıcı Grubu konferansından sonra Java ekosistemindeki en son gelişmeleri tartışmak her zaman heyecan vericidir. İster büyük bir sahnede, ister küçük gruplar halinde, ister konuşmaların arasında koridorlarda kendiliğinden olsun, bu etkileşimler beni çok zenginleştiriyor. Benim için Java bir teknolojiden çok daha fazlası: insanları birbirine bağlayan, onlara ilham veren ve birlikte büyümelerine olanak tanıyan bir ekosistem.
Wolfgang Weigend: 1998/1999'da Alman şirketlerinin geliştiricileri çok sayıda Java projesi başlattı. San Francisco'daki Moscone Center'da 25.000 katılımcıyla düzenlenen JavaOne geliştirici konferansına ilk katılışım önemliydi. Bu izlenimlerin Java topluluğuyla olan deneyimlerim üzerinde önemli bir etkisi oldu.
Gernot Starke: Bugün bunu hayal etmek zor ama birdenbire kodda “#ifdef” makroları olmadan programlayabildim ve kaynaklarımı diğer işletim sistemlerine çevirebildim. Java ekosistemi: Java ortamındaki birçok açık kaynaklı bileşenin/çerçevenin çeşitliliği ve neredeyse kıyaslanamayacak kadar yüksek kullanılabilirliği. Java'nın C#'a göre açıkça bir avantajı var. Bu anlamda, C, C++ veya C# yörüngesindeki projeler yalnızca son derece sınırlı sayıda açık kaynak bileşen/çerçeve seçiminden faydalanabilir ve faydalanabilir. Bunun çok büyük bir kaynak olduğunu düşünüyorum. Ayrıca Groovy'nin yıllar önce JVM'de alternatif bir dil olarak icat edilmesinin harika olduğunu düşündüm. JVM'nin avantajlarını korurken diğer dillerde (Kotlin, Scala, Groovy) geliştirme yeteneği.
Ama bütün bu parlayanlar altın değil. Sizi ne olumsuz etkiledi ya da Java ortamında hoş olmayan bir an neydi?
Bernd Müller: Java EE 8'in yayımlanmasında Oracle gecikmesi.
Heinz Kabutz: Sun Microsystems'ı Oracle'dan daha çok sevdim ama ne yazık ki çok fazla kayıp verdiler. Ancak Oracle, Java'yı iyi idare etti.
Patrick Baumgartner: Java ekosisteminde beni her zaman rahatsız eden şeylerden biri de Java veya Spring'e yapılan alakasız saldırılardır. Eleştiri önemli ve gerekli ama bazen bazı tartışmaların sağlam temelli argümanlara daha az dayandığını ve daha çok ilkelere dayalı olarak yürütüldüğünü hissediyorum. Teknolojiler gelişiyor ve elbette her bağlamda veya dilde zorluklar ve tuzaklar var. Ancak bunun hakkında yapıcı bir şekilde konuşmak yerine insanlar genellikle genel olarak Java'nın “modası geçmiş” veya “çok ağır” olduğunu ya da Spring'in “çok karmaşık” olduğunu belirtiyorlar. Bu tür iddialar genellikle bu teknolojilerin birçok sektörde bu kadar başarılı olmasının ve sürekli olarak geliştirilmesinin nedenlerini göz ardı ediyor. Bunun yerine açık ve eşit bir fikir alışverişi, hem güçlü hem de zayıf yönlerin vurgulandığı deneyimlere dayalı bir tartışma istiyorum. Bir ekosistemin uzun vadede gelişip iyileşebilmesinin tek yolu budur.
Wolfgang Weigend: Sun Microsystems tarafından alınan ve zaman zaman zorlayıcı olan iş kararları vardı, ancak konu Java olduğunda bunların benim üzerimde olumsuz bir etkisi olmadı. Her zaman bütünsel, ileri görüşlü teknolojiyi savundum.
Gernot Starke: Ah, çok var:
- Başlangıçta inşaat ve test için uygun bir altyapı yoktu. “karınca” yalnızca geliştirme ekipleri için böyleydi.
- Maven'in önceki versiyonlarındaki derleme süreçleri uzun zaman alıyordu ve bu da uzun süre can sıkıcı bir durumdu.
- Tarif edilemeyecek kadar ağır EJB'ler ve çok fazla teknik ayrıntıyı Java uygulama sunucularına devretme girişimi. Bu yazılım canavarları birçok takımın hayatını cehenneme çevirdi. Büyük üreticilerin teknik desteğiyle saatler harcadım çünkü bu canavarlar uzun süredir diş çıkarma sorunlarını çözemediler. Öne çıkan nokta, uygulama sunucusundaki hatanın tekrar görünmemesi için sunucu işletim sisteminin tamamının yeniden kurulması ve işletim sistemi çekirdeğini derlerken bazı (standart olmayan) parametrelerin ayarlanması önerisiydi.
- Eclipse-RCP'de (V2) masaüstü uygulamaları için GUI'ler geliştirmek ve ardından bunları Eclipse'in (V3) daha yeni bir sürümüne taşımak zorunda kalmak – sanırım tüm ekibimiz ayrılmayı veya kaçmayı düşünüyordu.
- Oracle'ın Sun Microsystems'i satın alması.
- Bu OSGI hiçbir zaman gerçekten başarılı olmadı veya pratikte yaygın olarak kullanılmadı. Ve Java modül sistemi oluşturma girişimi maalesef uygulamanın reddedilmesi nedeniyle başarısız oldu. Bunun mimari açıdan hala yararlı olduğunu düşünüyorum, ancak birçok proje bunu bilerek görmezden geliyor.
Java'nın 30 yıl sonra hala geçerli olduğunu düşünüyor musunuz? Özellikle diğer diller ve teknolojilerle karşılaştırıldığında Java'nın modern yazılım geliştirmede nasıl bir rol oynadığını düşünüyorsunuz?
Bernd Müller: Çok yaygın olduğu için çok alakalı ve çok önemli bir rol oynuyor. Java'nın bakımının diğer dillere göre daha kolay olduğuna inanıyorum, bu nedenle birkaç yıl içinde diğer dillerdeki büyük sistemlerin artık bakımı yapılmadığı (korunamadığı) için geçerliliğini yitirdiğini göreceğiz.
Heinz Kabutz: Java hala birçok büyük şirket tarafından kullanılıyor. Sağlam, hızlı ve güvenilir bir sistemdir.
Patrick Baumgartner: Kesinlikle! Java yıllar içinde muazzam bir şekilde gelişti ve kurumsal uygulamalar, bulut tabanlı sistemler ve dağıtılmış mimariler için en önemli dillerden biri olmaya devam ediyor. Lambdalardan kayıtlara ve sanal iş parçacıklarına kadar sürekli iyileştirmeler, Java'nın diğerlerinden önde olduğunu göstermektedir. Elbette Kotlin, Go veya Rust'un geçerli alternatifleri var ancak Java stabil, yüksek performanslı ve güvenli bir ekosistem sunuyor. Bu, dili birçok şirket ve geliştirici için son derece çekici hale getirmeye devam ediyor.
Wolfgang Weigend: Benim düşünceme göre Java bugün hala geçerli; özellikle de dağıtımı, geriye dönük uyumluluğu ve okunabilirliği ortada. Orta ve uzun vadede Java programlama dilinin iyi hazırlanmış olduğuna inanıyorum çünkü OpenJDK sayesinde yenilikler sürekli akabilir. Özellikle geliştirme ortamlarına sahip kod yardım sistemleri, mevcut Java kodunu analiz edecek ve geliştiricilerin görevlerini tamamlamalarında etkili bir şekilde destek olmak için yapay zeka ve makine öğrenimini kullanacak.
Gernot Starke: Python, Go ve Java/TypeScript gibi diller, otonom sistemler ve mikro hizmetler sayesinde önemli bir ivme kazandı. Öte yandan, birçok şirkette kritik yazılım bileşenleri olarak Java'da çok büyük miktarda mevcut kaynak kodu bulunmaktadır. Bu nedenle hala Java ve Java ekosisteminin çok alakalı olduğunu düşünüyorum.

Bir yanıt yazın