Java EE 8 için yeni plan yolda!
JavaOne 2016 bu sene 18-22 Eylül tarihleri arasında gerçekleşti. Konferansta yanıtı beklenen konulardan birisi ise yeni açıklanacak Java EE 8 planı idi.
Bir süredir Oracle firması Java EE standarları üzerinde çalışan mühendislerini başka görevlere yönlendirerek Java EE platformunu kasıtlı bir duraklamaya itmişti. Bu konuyu daha önce Java EE Ölüyor mu? Yoksa yeniden mi doğuyor başlığında irdelemiştim.
Şimdi ise Oracle’ın JavaOne 2016 konferansında açıkladığı yeni Java EE 8 planını ve plan hakkında görüşlerimi paylaşmak istiyorum.
Öncelikle Oracle’ın bu biçimde bir duraksamaya gitmesi pek sağlıklı bir davranış değildi. Fakat, Oracle yöneticiliğini yaptığı Java platformlarından beklediği karlılığı elde edemiyordu ve Google ile giriştiği davalardan da kazançlı çıkmaması onu iyice agresifleştirmişti. İşin hukuki yönünü bilmem fakat, kazan kazan felsefesine göre Oracle da kazanmalı..
Yeni Java EE 8 planını Group Vice President Anil Gaur açıkladı. Hedef ise 2017 yılında Java EE 8, 2018’de ise Java EE 9 platformlarını piyasaya sürmek.
Yeni açıklanan planda bir önceki Java EE 8 hedeflerine kısmen sadık kalınmakla birlikte, yeni önerilen özellikler de bulunuyor.
Yukarıda Anil Gaur’un sunumunu görmekteyiz. Açık mavi ve yaygın olan renk, halihazırda Java EE platformunda bulunan Java EE standart özelliklerini temsil ediyor. Koyu mavi renkler ise (JSF, JSON-P, Servlet ..) var olan ama yeni bir versiyonla yeni ek özellikler sunması hedeflenen standartları temsil ediyor. Kahverengi olarak temsil edilen renkler (Configuration ve HealthCheck) Oracle tarafından yeni önerilen standartlar iken, turuncu olanlar ise (JSON-B ve Security) daha önce duyurulan ve Java EE 8 planında yer alan yeni Java EE standartlarını temsil ediyor. Hedeflenen 2017 ve 2018 tarihlerini pek gerçekçi bulmamakla birlikte, yeni açıklanan Java EE 8 planınından genel olarak memnun olduğumu belirtmek istiyorum.
Yeni hedeflenen Configuration ve Health Check standartları, Mikroservis uygulamalarında duyulan genel ihtiyaçlardan ve bu Java EE platformunun trendleri takip etme arzusunu gösteriyor.
JSON-B artık sayısı onlarca olan JSON Binding kütüphanelerini (Jackson, Genson, Gson vb.) tek bir standart API şemsiyesine almayı hedefliyor. Security API ise, atıl halde bulunan Java EE Security API’lerini gerçek ihtiyaçlara göre yeniden şekillendiriyor. Her iki standart birden gerçek ihtiyaçları karşılamayı hedefliyor.
Bu listede göremediğimiz ama aşağıdaki görselde görebileceğimiz üzere, yeni plandan çıkarılan standartlar da var: MVC 1.0, JMS 2.1 ve Management 2.0.
Burada bir itirazım var! Şimdi sizlerle 2014 yılında yayınlanan Java EE kullanıcılarının beklentilerini temsil eden Java EE 8 topluluk anketi sonuçlarını paylaşmak istiyorum -> Java EE 8 Community Server Result. Bu ankete göre Java EE topluluğunun en çok istediği dört standart: JSON-B, Security, JCache ve MVC.
Oracle tarafından önerilen plana göre ne yazıkki JCache ve MVC Java EE 8 dışında tutulmuş görünüyor.
JCache Hazelcast, Ehcache ve Coherence gibi belirli bir olgunluğa erişen Cache teknolojilerine ortak API’ler getirmeyi hedefliyor. Aslında JCache şu anda bir Java standardı fakat, Java EE için standart entegrasyon henüz gerçeklenmiş durumda değil.
MVC 1.0 ise Spring MVC alternatifi, JAX-RS ve CDI standartlarıyla uyumlu bir web framework sunuyor. Bu iki standardın da, Java EE platformuna değer katacağını ve gerçek ihtiyaçlara karşılık beklenen özellikler olduğunu düşünüyorum. Burada MVC Expert Group içinden arkadaşım Florian’ın güzel bir yazısını bulabilirsiniz. Java EE 8 without MVC?
JMS 2.1 (Java Messaging Service) ise listeden çıkarılan diğer standart güncellemesi, fakat JMS 2.0 desteklenmeye devam edilecek. Mikroservis ve çok makineli uygulamalarda mesajlaşma sistemleri sıklıkla tercih ediliyor. Örneğin Kafka, Rabbit MQ ve Redis gibi çözümler uygulamalarda yerini alıyor, fakat her birinin API kullanım biçimleri farklı, JMS şu anda bu yapılardan uzak durumda. JMS’in bu ölçüde yeni ihtiyaçlar için revize edilebileceğini düşünüyorum.
Son olarak sizleri 21 Ekim tarihinde son bulacak ve Java EE 8’in geleceğini şekillendirecek Java EE 8’in geleceği anketine davet ediyorum.
Tekrar görüşmek dileğiyle.