Kutolewa kwa Java SE19

Baada ya miezi sita ya maendeleo, Oracle ilitoa Java SE 19 (Jukwaa la Java, Toleo la Kawaida la 19), ambayo hutumia mradi wa OpenJDK wa chanzo-wazi kama utekelezaji wa marejeleo. Isipokuwa kuondolewa kwa baadhi ya vipengele vilivyopitwa na wakati, Java SE 19 hudumisha upatanifu wa nyuma na matoleo ya awali ya jukwaa la Java - miradi mingi ya Java iliyoandikwa hapo awali itafanya kazi bila mabadiliko inapoendeshwa chini ya toleo jipya. Miundo iliyo tayari kusakinishwa ya Java SE 19 (JDK, JRE na Server JRE) imetayarishwa kwa ajili ya Linux (x86_64, AArch64), Windows (x86_64) na macOS (x86_64, AArch64). Iliyoundwa na mradi wa OpenJDK, utekelezaji wa marejeleo ya Java 19 ni chanzo wazi kabisa chini ya leseni ya GPLv2, na vighairi vya GNU ClassPath vinavyoruhusu kuunganisha kwa nguvu na bidhaa za kibiashara.

Java SE 19 imeainishwa kama toleo la kawaida la usaidizi na itaendelea kupokea masasisho hadi toleo lijalo. Tawi la Usaidizi wa Muda Mrefu (LTS) linapaswa kuwa Java SE 17, ambayo itaendelea kupokea masasisho hadi 2029. Hebu tukumbushe kwamba kuanzia na kutolewa kwa Java 10, mradi ulibadilika kwa mchakato mpya wa maendeleo, ikimaanisha mzunguko mfupi wa uundaji wa matoleo mapya. Utendaji mpya sasa unakuzwa katika tawi moja kuu lililosasishwa kila mara, ambalo linajumuisha mabadiliko yaliyotengenezwa tayari na ambayo matawi hukatwa kila baada ya miezi sita ili kuleta utulivu wa matoleo mapya.

Vipengele vipya katika Java 19 ni pamoja na:

  • Usaidizi wa awali wa muundo wa rekodi unaletwa, kupanua kipengele cha kulinganisha muundo kilicholetwa katika Java 16 na vifaa vya uchanganuzi wa maadili ya aina za rekodi. Kwa mfano: rekodi Point(int x, int y) {} void printSum(Object o) { if (o exampleof Point(int x, int y)) { System.out.println(x+y); }}
  • Linux huunda sasa inasaidia usanifu wa RISC-V.
  • Umeongeza usaidizi wa awali wa API ya FFM (Kazi na Kumbukumbu za Kigeni), ambayo inaruhusu programu za Java kuingiliana na msimbo na data ya nje kwa kupiga simu vitendaji kutoka kwa maktaba za nje na kupata kumbukumbu nje ya JVM.
  • Usaidizi ulioongezwa kwa nyuzi pepe, ambazo ni nyuzi nyepesi ambazo hurahisisha kwa kiasi kikubwa uandikaji na udumishaji wa utendakazi wa juu wa programu zenye nyuzi nyingi.
  • Utekelezaji wa nne wa awali wa Vector API unapendekezwa. Inatoa utendakazi kwa hesabu za vekta zinazofanywa kwa kutumia x86_64 na maagizo ya kichakata cha AArch64 na inaruhusu utendakazi wa wakati mmoja kwenye thamani nyingi (SIMD). Tofauti na uwekaji vekta otomatiki wa mkusanyaji wa HotSpot JIT wa utendakazi wa kasi, API mpya inaruhusu udhibiti wazi wa uwekaji vekta kwa uchakataji wa data sambamba.
  • Utekelezaji wa tatu wa majaribio wa ulinganishaji wa mchoro katika usemi wa swichi umeongezwa. Utekelezaji huu huruhusu lebo za vipodozi kutumia ruwaza zinazonyumbulika zinazofunika mfululizo wa thamani badala ya thamani mahususi, ambazo hapo awali zilihitaji misururu migumu ya vielezi kama...vingine. Kitu o = 123L; Kamba iliyoumbizwa = kubadili (o) { case Integer i -> String.format("int %d", i); kesi Long l -> String.format("nde %d", l); kesi Double d -> String.format("double %f", d); kesi Kamba s -> String.format("Kamba %s", s); chaguo-msingi -> o.toString(); };
  • API ya majaribio ya usambamba uliopangwa imeongezwa, ikirahisisha uundaji wa programu zenye nyuzi nyingi kwa kushughulikia kazi nyingi zinazoendeshwa kwenye nyuzi tofauti kama kitengo kimoja.

Chanzo: opennet.ru

Kuongeza maoni