Java SE 16 la sii daayay

Ka dib lix bilood oo horumarin ah, Oracle wuxuu sii daayay Java SE 16 (Java Platform, Standard Edition 16), kaas oo u adeegsada mashruuca OpenJDK sidii tixraac ahaan. Java SE 16 waxa ay ilaalinaysaa iswaafajinta dib u sii daynta hore ee madal Java; dhammaan mashaariicda Java ee hore loo qoray waxa ay ku shaqayn doonaan isbedel la'aan marka la bilaabo nooca cusub. U diyaarsan in la rakibo dhismooyinka Java SE 16 (JDK, JRE iyo Server JRE) waxaa loo diyaariyey Linux (x86_64, AArch64), Windows iyo macOS. Waxaa sameeyay mashruuca OpenJDK, hirgelinta tixraaca Java 16 waa il furan oo hoos timaada shatiga GPLv2, iyadoo GNU ClassPath ka reeban tahay isku xirka firfircoonida leh ee badeecadaha ganacsiga.

Java SE 16 waxaa loo kala saaray sidii siideynta taageerada guud waxayna sii wadi doontaa inay hesho warar cusub ilaa sii daynta xigta. Laanta Taageerada Muddada Dheer (LTS) waa inay noqotaa Java SE 11, taasoo sii wadi doonta inay hesho cusboonaysiinta ilaa 2026. Siideynta soo socota ee LTS waxaa loo qorsheeyay Sebtembar 2021. Aan ku xasuusino in laga bilaabo siideynta Java 10, mashruucu u wareegay hannaan horumarineed oo cusub, taasoo ka dhigan wareeg gaaban oo loogu talagalay samaynta sii-deynta cusub. Shaqayn cusub ayaa hadda lagu soo saaray hal laan sayid oo joogto ah, oo ay ku jiraan isbeddelada diyaarka ah iyo kuwa laamaha la sii daayo lixdii biloodba mar si loo dejiyo sii deynta cusub.

Diyaarinta sii deynta cusub, horumarku wuxuu ka guuray nidaamka xakamaynta nooca Mercurial una guuray Git iyo GitHub goobta horumarinta iskaashiga ah. Socdaalka ayaa la filayaa in ay wanaajiso waxqabadka hawlaha kaydka, kordhinta hufnaanta kaydinta, bixinta marin u helka isbeddelada ilaa taariikhda mashruuca, wanaajiso taageerada dib u eegista koodka, iyo in ay awood u siiso API-yada in ay toosiyaan socodka shaqada. Intaa waxaa dheer, isticmaalka Git iyo GitHub waxay ka dhigaysaa mashruuca mid soo jiidasho leh bilawga iyo horumariyeyaasha caadaystay Git.

Tilmaamaha cusub ee Java 16 waxaa ka mid ah:

  • Module tijaabo ah oo lagu daray jdk.incubator.vector oo leh hirgelinta Vector API, kaas oo bixiya hawlaha xisaabinta vector ee lagu sameeyo iyada oo la adeegsanayo tilmaamaha vector ee x86_64 iyo AArch64 soo-saareyaal oo u oggolaanaya hawlgallada in lagu dabaqo isku mar si loo qiimeeyo qiimaha badan (SIMD). Si ka duwan awoodaha lagu bixiyo HotSpot JIT compiler ee auto-vectorization ee hawlgallada scalar, API-ga cusub wuxuu kuu ogolaanayaa inaad si cad u xakamayso vectorization ee habaynta xogta barbar socota.
  • JDK iyo VM HotSpot code ee ku qoran C++ waa loo ogol yahay inay isticmaalaan sifooyinka lagu soo bandhigay qeexida C++14. Markii hore, heerarka C ++ 98/03 waa la oggolaaday.
  • ZGC (Z Qashin ururiyaha), kaas oo ku shaqeeya qaab dadban oo yareeya dib u dhigista ururinta qashinka sida ugu badan ee suurtogalka ah, ayaa ku dartay awoodda lagu farsameeyo xirmooyinka dunta si barbar socda iyada oo aan la joojin dunta codsiga. ZGC-gu hadda waxa uu leeyahay oo kaliya shaqo u baahan in la hakiyo, kaas oo leh dib u dhac joogto ah, inta badan aan ka badnayn dhawr boqol oo mikrosek.
  • Taageero lagu daray Unix sockets (AF_UNIX) SocketChannel, ServerSocketChannel iyo java.nio.channels classes.
  • Deked ayaa loo hirgeliyay qaybinta Linux Alpine oo leh musl maktabadda C ee caadiga ah, taas oo caan ku ah bay'ada weelasha, adeegaha yar yar, daruuraha iyo nidaamyada ku-xidhan. Dekadda la soo jeediyay ee jawiyadan oo kale waxay kuu ogolaaneysaa inaad socodsiiso barnaamijyada Java sida codsiyada caadiga ah. Intaa waxaa dheer, adigoo isticmaalaya jlink, waxaad ka saari kartaa dhammaan qaybaha aan la isticmaalin oo waxaad abuuri kartaa jawi yar oo ku filan si loo socodsiiyo codsiga, kaas oo kuu ogolaanaya inaad abuurto sawirro is haysta oo gaar ah.
  • Farsamaynta Metaspace Elastic waa la hirgaliyay, iyada oo wanaajisay hawlgallada qoondaynta iyo soo celinta xusuusta ay ku jiraan metadata fasalka (metaspace) ee JVM HotSpot. Isticmaalka Metaspace Elastic waxa ay yaraynaysaa kala qaybsanaanta xusuusta, waxa ay yaraynaysaa heerka sare ee loader-ka, waxa kale oo ay leedahay saamayn faa'iido leh oo ku saabsan waxqabadka codsiyada server-ka ee mudada dheer socda sababtoo ah soo celinta degdega ah ee xusuusta ay ku jirto xogta fasalka aan la isticmaalin ee nidaamka hawlgalka. Si aad u dooratid qaabka siidaynta xusuusta ka dib marka la dejiyo xiisadaha, ikhtiyaarka "-XX: MetaspaceReclaimPolicy=(balanced|agressive|midna)" ayaa la bixiyaa.
  • Deked JDK ah ayaa lagu daray nidaamyada Windows ee ku shaqeeya qalabka ay wataan soo-saareyaal ku salaysan qaab dhismeedka AArch64.
  • Horudhac saddexaad oo ah Helitaanka-Xusuusta Dibadda API ayaa la soo jeediyay, taasoo u oggolaanaysa codsiyada Java inay si ammaan ah oo hufan u galaan gobollada xusuusta ee ka baxsan taallo Java iyadoo la adeegsanayo qaybta cusub ee MemorySegment, MemoryAddress, iyo MemoryLayout abstractions.
  • Tijaabo Ajnabi Linker API waa la hirgaliyay, iyadoo laga helayo Java ilaa koodka asalka ah. Si wada jir ah API-Memory-Memory, interface-ka cusub ee barnaamijka ayaa ka dhigaysa mid aad u fudud in la abuuro duubab maktabadaha caadiga ah ee la wadaago.
  • Waxaa lagu daray utility jpckage, kaas oo kuu ogolaanaya inaad abuurto baakado loogu talagalay codsiyada Java ee iskood u kooban. Adeeggu wuxuu ku saleysan yahay javapackager ka JavaFX wuxuuna kuu oggolaanayaa inaad abuurto baakado qaabab u dhashay goobo kala duwan (msi iyo exe ee Windows, pkg iyo dmg ee macOS, deb iyo rpm ee Linux). Xirmooyinka waxaa ku jira dhammaan ku-tiirsanaanta loo baahan yahay.
  • Soo koobid adag ee dhammaan gudaha JDK waxa loo dajiyay si toos ah, marka laga reebo API-yada muhiimka ah sida sun.misc.Unsafe. Qiimaha ikhtiyaarka "--legal-access" ayaa hadda loo dejiyay "diidmo" halkii "ogolaansho" si caadi ah, kaas oo xannibi doona isku dayga koodka si loo galo inta badan fasallada, hababka iyo goobaha gudaha. Si aad uga gudubto xaddidaadda, isticmaal ikhtiyaarka "-illegal-access=ogolaanshaha".
  • Hirgelinta qaabka u dhigma ee hawlwadeenka "tusaaleof" ayaa la dejiyay, kaas oo kuu ogolaanaya inaad isla markiiba qeexdo doorsoomayaasha maxaliga ah si aad u tixraacdo qiimaha la hubiyay. Tusaale ahaan, waxaad isla markiiba qori kartaa "haddii (obj tusaale ahaan String s && s.length()> 5) {.. s.contains(..) ..}" adigoon si cad u qeexin "String s = (String) obj". Waxay ahayd: haddi (obj example of Group) {Kooxda kooxda = (Koox) obj; var entries = group.getEntries (); Hadda waxaad samayn kartaa adigoon qeexin "Kooxda = (Group) obj": if (obj instanceof Group group) {var entries = group.getEntries(); }
  • Hirgelinta erayga muhiimka ah ee "diiwaanka" waa la xasiliyay, iyadoo siinaya qaab kooban oo qeexitaanno fasalka ah kaas oo meesha ka saaraya baahida loo qabo in si cad loo qeexo hababka kala duwan ee hoose sida siman (), hashCode () iyo toString () xaaladaha lagu kaydiyo xogta. kaliya ee beeraha, kuwaas oo aan la beddelin. Marka fasalku isticmaalo hirgelinta caadiga ah ee kuwa isle'eg(), hashCode () iyo toString(), hababka, waxay samayn kartaa iyada oo aan la helin qeexitaankooda cad: diiwaanka dadweynaha BankTransaction (LocalDate date, double money, description String) {}

    Bayaankani waxa uu si toos ah ugu dari doonaa hirgelinta hababka siman ee loo siman yahay (), hashCode() iyo toString() marka lagu daro hababka wax-dhisaha iyo soo-saarka.

  • Qabyo-qoraalka labaad ayaa loo soo jeediyay fasallo xidhan iyo is-dhexyaal aan isticmaali karin fasallada kale iyo is-dhex-galka si ay u dhaxlaan, u dheereeyaan, ama uga gudbaan fulinta. Fasallada la xidhay waxay sidoo kale bixiyaan hab caddaynaya oo lagu xaddidayo isticmaalka heer sare marka loo eego wax ka beddelayaasha gelitaanka, iyadoo lagu salaynayo si cad oo loo taxay fasal-hoosaadyadii loo oggolaaday kordhinta. xirmo com.example.geometry; Qaabka guud ee shaabadaysan wuxuu ogol yahay com.tusaale.polar.Circle, com.example.quad.Rectangle, com.example.quad.fudud.Square {…}

Source: opennet.ru

Add a comment