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 ruwaza za rekodi umependekezwa, kupanua kipengele cha kulinganisha muundo kilicholetwa katika Java 16 na zana za kuchanganua maadili ya madarasa ya 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 hujenga hutoa msaada kwa usanifu wa RISC-V.
  • Umeongeza usaidizi wa awali kwa API ya FFM (Kazi ya Kigeni & Kumbukumbu), ambayo inakuruhusu kupanga mwingiliano wa programu za Java na msimbo na data ya nje kwa kupiga simu utendakazi kutoka kwa maktaba za nje na kupata kumbukumbu nje ya JVM.
  • Usaidizi ulioongezwa kwa nyuzi pepe, ambazo ni nyuzi nyepesi ambazo hurahisisha sana uandishi na udumishaji wa utendakazi wa juu wa programu zenye nyuzi nyingi.
  • Onyesho la kuchungulia la nne la API ya Vekta limependekezwa, kutoa utendakazi kwa hesabu za vekta ambazo hutekelezwa kwa kutumia maagizo ya vekta kwenye vichakataji vya x86_64 na AArch64 na kuruhusu utendakazi kutumika kwa wakati mmoja kwa thamani nyingi (SIMD). Tofauti na uwezo uliotolewa katika mkusanyaji wa HotSpot JIT wa uwekaji vekta otomatiki wa shughuli za kadiri, API mpya huwezesha kudhibiti uwekaji vekta kwa uchakataji sambamba wa data.
  • Utekelezaji wa tatu wa majaribio wa ulinganishaji wa muundo katika misemo ya "badili" umeongezwa, ikiruhusu matumizi katika lebo za "kesi" sio za maadili kamili, lakini ya muundo rahisi unaofunika safu ya maadili mara moja, ambayo hapo awali ilihitajika. tumia minyororo migumu ya misemo ya "ikiwa ... vinginevyo". 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(); };
  • Imeongeza API ya majaribio ya usambamba uliopangwa, ambayo hurahisisha uundaji wa programu zenye nyuzi nyingi kwa kushughulikia kazi nyingi zinazoendeshwa katika nyuzi tofauti kama kizuizi kimoja.

Chanzo: opennet.ru

Kuongeza maoni