Oracle Java geliştirici ilişkileri temsilcisi Nicolai Parlog, 18 Ocak’ta yayınlanan bir videoda bu yıl Java’nın planlarında neler olduğunu anlattı. Parlog, “Ancak çalışmaların çoğunun aynı yılda yayınlanmayacağını ve bu iyileştirmelerin çoğunun yalnızca 2025 veya sonrasında kullanılabilir olacağını unutmayın” diye uyardı.
Oracle’ın 2024’te Java’yı geliştirme planları arasında, uzun süredir devam eden performans darboğazlarını ortadan kaldırmaya yönelik olarak daha küçük, üretkenlik odaklı özellikler geliştirmek için Amber’den, Java’yı GPU’lar gibi yabancı programlama modellerine genişletmek için Babylon’a ve Java nesne modelini değer nesneleri ile zenginleştirmek için Valhalla’ya kadar uzanan OpenJDK projeleri yer alıyor.
Project Babylon için Parlog, kod yansıması, yansıma API’sinin genişletilmesi ve Java kodunun bir yöntem içinde dönüştürülmesine izin verilmesi planlarından bahsetti. Amaç, geliştiricilerin kütüphanelerin daha sonra matematiksel bir fonksiyon olarak yorumlayabileceği Java kodu yazmasına olanak sağlamak. Babylon ekibi önümüzdeki haftalarda otomatik farklılaştırma, C# LINQ emülasyonu ve GPU programlama gibi kullanım senaryolarına ilişkin çalışmaları yayınlamayı planlıyor.
Devreye alma sürelerini iyileştirmeyi amaçlayan Leyden Projesi’nde 2024 planları, kondansatör konseptinin iyileştirilmesini ve prototip kondansatörlerin üretime hazır hale getirilmesine yönelik çalışmaları içeriyor. Project Amber’de önizlemedeki mevcut özellikler arasında dize şablonları, basitleştirilmiş bir ana yöntem ve this() ve super() öncesindeki ifadeler yer alıyor. Parlog, “Üçünün de 2024’te sonuçlanmasını bekliyorum” dedi. Desenler ve ifadelerdeki ilkel türler gibi yetenekler araştırılmaktadır.
Project Valhalla’da çalışma, yalnızca örnek alanlara sahip ve nesne kimliğinden yoksun sınıf örnekleri sağlayan değer sınıfları ve nesnelere odaklanacak final. Integer, Double ve Byte gibi Kutulu ilkelleri temsil eden, kimliğe ihtiyaç duymayan basit değerleri saran veya “kutulayan” sınıfların örnekleridir. Kimliğin kaldırılması, yalnızca geliştiricinin bu sınıflara uygulanan anlamı hakkındaki kafa karışıklığını ortadan kaldırmakla kalmaz , aynı zamanda boxed Integer, Double, ve Bytenesnelerin çalışma süresi yükünü de önemli ölçüde azaltır.
HotSpot JVM’deki Java nesne başlıklarını küçültmeyi ve Java’nın bellek ayak izini azaltmayı amaçlayan Project Lilliput’ta , çalışmalar artık hızlı kilitleme şemasının iyileştirilmesine odaklanıyor. Parlog, JVM ile yerel C kodunu birbirine bağlamak için Panama Projesi’nin “ateşte üç püf noktası olduğunu” söyledi. Vektör API’si kuluçka aşamasındadır, yabancı işlev ve bellek API’si geliştirilmektedir ve yerel kitaplık başlıklarından Java bağlamaları üreten bir araç olan jextract yapım aşamasındadır; bunların tümü yerel kitaplıklarla çalışmayı daha basit hale getirir.
Java VM ve API özelliklerini içeren Project Loom’a gelince Parlog, ilgi odağındaki günlerinin sona ermek üzere olduğunu düşündüğünü söyledi. Sanal iş parçacıkları nihaidir ve yapılandırılmış eşzamanlılık ve kapsam değerleri API’leri Java 22’de ikinci önizlemelerine ulaştı . Bu yıl sonuçlanması bekleniyor. Parlog, en azından Linux’ta senkronizasyonun sabitlenmemesi ve dosya G/Ç’sinin yakalanmaması konusunda ilerleme kaydedilmesi yönündeki umudunu dile getirdi.