Rilaxx Java SE 19

Wara sitt xhur ta 'żvilupp, Oracle ħareġ il-pjattaforma Java SE 19 (Java Platform, Standard Edition 19), li tuża l-proġett OpenJDK open source bħala implimentazzjoni ta' referenza. Bl-eċċezzjoni tat-tneħħija ta 'xi karatteristiċi deprecati, Java SE 19 iżomm kompatibilità b'lura ma' rilaxxi preċedenti tal-pjattaforma Java - il-biċċa l-kbira tal-proġetti Java miktuba qabel xorta se jaħdmu mingħajr modifika meta jitħaddmu taħt il-verżjoni l-ġdida. Bini ta' Java SE 19 lest biex jiġi installat (JDK, JRE, u Server JRE) huma ppreparati għal Linux (x86_64, AArch64), Windows (x86_64), u macOS (x86_64, AArch64). Żviluppata mill-proġett OpenJDK, l-implimentazzjoni ta' referenza Java 19 hija sors kompletament miftuħ taħt il-liċenzja GPLv2 b'eċċezzjonijiet GNU ClassPath biex tippermetti konnessjoni dinamika ma' prodotti kummerċjali.

Java SE 19 huwa kategorizzat bħala rilaxx ta 'appoġġ regolari, b'aġġornamenti li għandhom jiġu rilaxxati qabel ir-rilaxx li jmiss. Il-fergħa tal-appoġġ fit-tul (LTS) għandha tkun Java SE 17, li se tirċievi aġġornamenti sal-2029. Ifakkar li beda bir-rilaxx ta 'Java 10, il-proġett qaleb għal proċess ta' żvilupp ġdid, li jimplika ċiklu iqsar għall-formazzjoni ta 'rilaxxi ġodda. Funzjonalità ġdida issa qed tiġi żviluppata f'fergħa prinċipali waħda aġġornata kontinwament, li tinkorpora bidliet li diġà tlestew u li minnha fergħat huma ramifikati kull sitt xhur biex jistabbilizzaw rilaxxi ġodda.

Karatteristiċi ġodda f'Java 19 jinkludu:

  • Ġie propost appoġġ preliminari għall-mudelli tar-rekords, li testendi l-karatteristika ta 'tqabbil tal-mudelli introdotta f'Java 16 b'għodod għall-analiżi tal-valuri tal-klassijiet tar-rekords. Per eżempju: rekord Point(int x, int y) {} void printSum(Object o) { if (o instanceof Point(int x, int y)) { System.out.println(x+y); } }
  • Il-binjiet tal-Linux jipprovdu appoġġ għall-arkitettura RISC-V.
  • Miżjud appoġġ preliminari għall-API FFM (Funzjoni Barranija & Memorja), li tippermettilek torganizza l-interazzjoni ta 'programmi Java b'kodiċi u data esterni billi ċċempel funzjonijiet minn libreriji esterni u taċċessa memorja barra l-JVM.
  • Appoġġ miżjud għal ħjut virtwali, li huma ħjut ħfief li jissimplifikaw bil-kbir il-kitba u l-manutenzjoni ta 'applikazzjonijiet b'ħafna ħjut ta' prestazzjoni għolja.
  • Ġiet proposta r-raba’ preview tal-API Vector, li tipprovdi funzjonijiet għal kalkoli tal-vettur li huma esegwiti bl-użu ta’ struzzjonijiet tal-vettur fuq proċessuri x86_64 u AArch64 u jippermettu li l-operazzjonijiet jiġu applikati simultanjament għal valuri multipli (SIMD). B'differenza mill-kapaċitajiet ipprovduti fil-kompilatur HotSpot JIT għall-vettorizzazzjoni awtomatika ta 'operazzjonijiet skalari, l-API l-ġdida tagħmilha possibbli li tikkontrolla b'mod espliċitu l-vettorizzazzjoni għall-ipproċessar tad-dejta parallela.
  • Ġiet miżjuda t-tielet implimentazzjoni sperimentali tat-tqabbil tal-mudelli fl-espressjonijiet "swiċċ", li tippermetti l-użu f'tikketti "każ" mhux ta 'valuri eżatti, iżda ta' mudelli flessibbli li jkopru serje ta 'valuri f'daqqa, li għalihom qabel kien meħtieġ li uża ktajjen ingombranti ta’ espressjonijiet “jekk... inkella”. Oġġett o = 123L; String formatted = switch (o) { case Integer i -> String.format ("int %d", i); case Long l -> String.format("long %d", l); każ Double d -> String.format ("double %f", d); case String s -> String.format ("String %s", s); default -> o.toString(); };
  • Żid API sperimentali għal paralleliżmu strutturat, li jissimplifika l-iżvilupp ta 'applikazzjonijiet b'ħafna kamini billi jittratta kompiti multipli li jaħdmu f'ħjut differenti bħala blokka waħda.

Sors: opennet.ru

Żid kumment