2 puan yazan GN⁺ 2024-03-20 | 1 yorum | WhatsApp'ta paylaş
  • Java 22'nin referans uygulaması olan JDK 22, genel kullanım (GA) için yayımlandı.
  • Oracle'ın GPL lisansı ile sunduğu OpenJDK derlemesi https://jdk.java.net/22 adresinde kullanılabilir. Diğer tedarikçilerin derlemeleri de yakında kullanıma sunulacaktır.

Bu sürümde toplam 12 JEP (Java Enhancement Proposals) yer alıyor

  • 423: G1 için Bölge Sabitleme (Region Pinning)
  • 447: super(...) öncesi ifadeler (önizleme)
  • 454: Foreign Function & Memory API
  • 456: Adsız değişkenler ve desenler
  • 457: Class-File API (önizleme)
  • 458: Çok dosyalı kaynak kod programlarını çalıştırma
  • 459: String Templates (ikinci önizleme)
  • 460: Vector API (yedinci inkübatör)
  • 461: Stream Gatherers (önizleme)
  • 462: Structured Concurrency (ikinci önizleme)
  • 463: Örtük olarak bildirilen sınıflar ve örnek ana metotları (ikinci önizleme)
  • 464: Scoped Values (ikinci önizleme)

Ek bilgiler

  • Bu sürüm, yüzlerce küçük iyileştirme ve binlerce hata düzeltmesi içeriyor.
  • Bu sürüme katkıda bulunan herkese teşekkür ediliyor.

GN⁺ görüşü

  • JDK 22'nin yayımlanması, Java geliştiricileri için önemli bir gelişme ve yeni özellikler ile iyileştirmelerin geliştirme deneyimini artırması bekleniyor.
  • Özellikle Foreign Function & Memory API gibi özellikler, sistem programlama ve entegrasyon alanlarında Java'nın yeteneklerini genişletmeye katkı sağlayabilir.
  • Structured Concurrency gibi özellikler, modern çok çekirdekli işlemcilerin avantajlarından daha iyi yararlanmaya yönelik Java'nın çabasını yansıtıyor.
  • Benzer özellikler başka dillerde veya platformlarda da sunuluyor olsa da Java, geniş kullanıcı tabanı ve güçlü topluluk desteğiyle kendine özgü bir değer sunuyor.
  • Mevcut sistemlerle uyumluluk, performans etkisi ve öğrenme eğrisi gibi unsurlar dikkate alınmalı; JDK 22'nin yeni özellikleri de bu değerlendirmelere göre kademeli olarak benimsenmelidir.

1 yorum

 
GN⁺ 2024-03-20
Hacker News görüşleri
  • Yeni sürümde en çok beğenilen özellik:

    JEP 463, yeni başlayanlar için kullanılabilirlik iyileştirmeleri getiriyor; bu da Java programlamaya yeni giren insanların Java kullanmaya devam edip etmeyeceği konusunda fark yaratabilir.

  • "Seksi" olmayan bir programlama dili değişikliği, ancak yabancı fonksiyon arayüzü büyük bir değişim olabilir:

    Daha önce Java'nın JNI tabanlı kütüphanelerine bağımlı olmak, yükseltmeler sırasında en çok sorun çıkaran noktalardan biriydi; bu yüzden bu değişikliğin Java'nın bakım yükünü azaltmasını umuyorum.

  • Bağlantı verilebilir özellikler:

    Kişisel olarak en ilginç olanın JEP 461 (Stream Gatherers) olduğunu düşünüyorum; buradan bakabilirsiniz ve bu özellik stream işlemlerine ilginç eklemeler getirecek.

  • Yabancı fonksiyon arayüzü, C#'ın Java'ya kıyasla sahip olduğu başlıca avantajlardan biri:

    Örneğin Android veya macOS gibi devasa API'lerle mücadele ederken, bu JEP'in sonuçlarını gerçekten merak ediyorum.

  • Hâlâ Java 8 kullanan bu kadar çok yer olmasına şaşırma:

    Yakın zamanda gördüğüm bir ankete göre projelerin yaklaşık üçte biri Java 8 kullanıyor ve bunların yaklaşık yarısı da Java 11 kullanıyor.

  • G1 garbage collector ücretsiz şekilde gelişmeye devam ediyor:

    Bunun için yeni bir build etiketi oluşturmanın zamanı geldi.

  • String Templates API'nin gelişimi ilgi çekici:

    STR ve fmt template processor'larını kullanan API geliştirme sürecini takip ediyorum.

  • "Vector API (Seventh Incubator)" hakkında soru işaretleri:

    Java'da vektörlerle ilgili yedinci yineleme olması düşündürücü; acaba tam olarak neler oluyor?

  • Bu özelliklere dair örnekler:

    HappyCoders üzerinden Java 22 özelliklerine dair örneklere bakabilirsiniz.

  • Java ile ilgili değil, ancak basit bir HTML sayfası görmek ferahlatıcı:

    Karmaşık olmayan bir HTML sayfası görmek, uzun zaman sonra serinletici bir deneyim gibi.