Java SE 19 buraxılışı

Altı aylıq inkişafdan sonra Oracle, OpenJDK açıq mənbə layihəsindən istinad tətbiqi kimi istifadə edən Java SE 19 (Java Platform, Standard Edition 19) platformasını buraxdı. Bəzi köhnəlmiş xüsusiyyətlərin silinməsi istisna olmaqla, Java SE 19 Java platformasının əvvəlki buraxılışları ilə geriyə uyğunluğu qoruyur - əvvəllər yazılmış Java layihələrinin əksəriyyəti yeni versiya altında işləyərkən heç bir dəyişiklik olmadan işləyəcək. Java SE 19 (JDK, JRE və Server JRE) quraşdırmaya hazır quruluşları Linux (x86_64, AArch64), Windows (x86_64) və macOS (x86_64, AArch64) üçün hazırlanmışdır. OpenJDK layihəsi tərəfindən hazırlanmış Java 19 istinad tətbiqi kommersiya məhsulları ilə dinamik əlaqəyə imkan vermək üçün GNU ClassPath istisnaları ilə GPLv2 lisenziyası altında tam açıqdır.

Java SE 19 müntəzəm dəstək buraxılışı kimi təsnif edilir və yeniləmələr növbəti buraxılışdan əvvəl buraxılacaq. Uzunmüddətli dəstək (LTS) filialı 17-cu ilə qədər yeniləmələri alacaq Java SE 2029 olmalıdır. Xatırladaq ki, Java 10-un buraxılışından başlayaraq, layihə yeni relizlərin formalaşması üçün daha qısa dövrü nəzərdə tutan yeni inkişaf prosesinə keçdi. Artıq tamamlanmış dəyişiklikləri özündə cəmləşdirən və yeni buraxılışları sabitləşdirmək üçün hər altı aydan bir budaqlanan filiallardan ibarət daimi yenilənən bir master filialda yeni funksionallıq hazırlanır.

Java 19-da yeni xüsusiyyətlərə aşağıdakılar daxildir:

  • Rekord nümunələri üçün ilkin dəstək təklif edilmişdir, qeyd növü siniflərinin dəyərlərini təhlil etmək üçün Java 16 nümunə uyğunlaşdırma qabiliyyətini genişləndirir. Məsələn: qeyd Point(int x, int y) {} void printSum(Object o) { if (o instanceof Point(int x, int y)) { System.out.println(x+y); } }
  • Linux konstruksiyaları RISC-V arxitekturasına dəstək verir.
  • Xarici kitabxanalardan funksiyaları çağırmaq və JVM-dən kənar yaddaşa daxil olmaq vasitəsilə Java proqramlarının xarici kod və verilənlərlə qarşılıqlı əlaqəsini təşkil etməyə imkan verən FFM (Xarici Funksiya və Yaddaş) API üçün ilkin dəstək əlavə edilib.
  • Yüksək performanslı çox yivli tətbiqlərin yazılmasını və saxlanmasını xeyli asanlaşdıran yüngül iplər olan virtual iplər üçün əlavə dəstək.
  • X86_64 və AArch64 prosessorlarının vektor təlimatlarından istifadə edərək yerinə yetirilən vektor hesablamaları üçün funksiyaları təmin edən və eyni vaxtda bir neçə dəyərə (SIMD) əməliyyatlar tətbiq etməyə imkan verən Vector API-nin dördüncü ilkin tətbiqi təklif olunur. Skayar əməliyyatların avtovektorlaşdırılması üçün HotSpot JIT kompilyatorunda təqdim edilən imkanlardan fərqli olaraq, yeni API paralel verilənlərin emalı üçün vektorlaşdırmanı açıq şəkildə idarə etməyə imkan verir.
  • Keçid ifadələrində nümunə uyğunluğunun üçüncü eksperimental tətbiqi əlavə edildi ki, bu da əvvəllər if...else ifadələrinin çətin zəncirlərindən istifadə edilmiş bir sıra dəyərləri əhatə edən vəziyyət etiketlərində çevik şablonlardan istifadə etməyə imkan verir. Obyekt o = 123L; Sətir formatlaşdırıldı = keçid (o) { halda Tam ədəd i -> String.format("int %d", i); case Long l -> String.format("uzun %d", l); case Double d -> String.format("double %f", d); case String s -> String.format("String %s", s); default -> o.toString(); };
  • Eksperimental Strukturlaşdırılmış Paralellik API əlavə edildi ki, bu, müxtəlif mövzularda işləyən birdən çox tapşırığı vahid vahid kimi nəzərdən keçirməklə çox yivli proqramları inkişaf etdirməyi asanlaşdırır.

Mənbə: opennet.ru

Добавить комментарий