Java SE 20 saki

Bayan watanni shida na ci gaba, Oracle ya fito da dandalin Java SE 20 (Java Platform, Standard Edition 20), wanda ke amfani da bude tushen aikin OpenJDK azaman aiwatar da tunani. Ban da cire wasu fasalolin da aka yanke, Java SE 20 yana kula da dacewa da baya tare da abubuwan da suka gabata na dandalin Java - yawancin ayyukan Java da aka rubuta a baya za su yi aiki ba tare da canje-canje ba yayin da suke gudana ƙarƙashin sabon sigar. Java SE 20 ginawa (JDK, JRE, da Server JRE) an shirya don Linux (x86_64, AArch64), Windows (x86_64), da macOS (x86_64, AArch64). An haɓaka ta aikin OpenJDK, aiwatar da tunani na Java 20 yana buɗewa gabaɗaya ƙarƙashin lasisin GPLv2 tare da keɓancewar GNU ClassPath don ba da damar haɗa kai ga samfuran kasuwanci.

Java SE 20 an kasafta shi azaman sakin tallafi na yau da kullun, tare da sabbin abubuwan da za'a fitar kafin sakin na gaba. Reshen tallafi na dogon lokaci (LTS) yakamata ya zama Java SE 17, wanda zai karɓi sabuntawa har zuwa 2029. Ka tuna cewa farawa tare da sakin Java 10, aikin ya canza zuwa wani sabon tsari na ci gaba, wanda ke nuna gajeriyar zagayowar don samuwar sabbin abubuwa. Yanzu ana haɓaka sabbin ayyuka a cikin reshe mai girma da aka sabunta akai-akai, wanda ke haɗa sauye-sauye da aka riga aka kammala kuma daga cikinsu ake reshen rassan kowane wata shida don daidaita sabbin abubuwan da aka fitar.

Sabbin abubuwa a cikin Java 20 sun haɗa da:

  • Akwai tallafi na farko don Ƙimar Ƙimar, yana ba da damar raba bayanan da ba za a iya canzawa ba a cikin zaren da kuma musayar bayanan da ya dace tsakanin zaren yara (darajar da aka gada). Ana haɓaka ƙima mai ƙima don maye gurbin tsarin canjin zaren-na gida kuma sun fi dacewa yayin amfani da adadi mai yawa na zaren kama-da-wane (dubu ko miliyoyin zaren). Babban bambancin da ke tsakanin Ƙimar Maɗaukaki da madaidaitan zaren-gida shine cewa an rubuta na farko sau ɗaya, ba za a iya canza su nan gaba ba, kuma suna kasancewa kawai na tsawon lokacin aiwatar da zaren. uwar garken aji {ScopedValue na ƙarshe CURRENT_USER = sabon ScopedValue(); hidima mara amfani (Buƙatar Buƙatun, Amsar Amsa) {var matakin = (buƙata. isAuthorized()? ADMIN : GUEST); var mai amfani = sabon Mai amfani (matakin); ScopedValue.where(CURRENT_USER, mai amfani).run (() -> Application.handle (buƙata, amsa)); } } class DatabaseManager {DBConnection bude() {var mai amfani = Server.CURRENT_USER.get(); idan (!user.canOpen()) jefa sabon InvalidUserException (); dawo da sabon DBConnection (...); } }
  • An ƙara samfoti na biyu na tsarin rikodi, yana faɗaɗa fasalin daidaita tsarin da aka gabatar a cikin Java 16 don tantance ƙimar darajojin rikodin. Misali: rikodin Point (int x, int y) {} static void printSum (abun abu) {idan (obj misalin Point p) { int x = px(); int y = py(); System.out.println(x+y); } }
  • An ƙara aiwatar da aiwatarwa na farko na huɗu na daidaitaccen tsari a cikin maganganun "canzawa", yana ba da damar lakabin "harka" don amfani da ƙima ba daidai ba, amma ƙirar sassauƙa waɗanda ke rufe jerin ƙima a lokaci ɗaya, wanda a baya ya zama dole a yi amfani da m. sarƙoƙi na "idan ... sauran" maganganu. a tsaye String formatterPatternSwitch(Object obj) {sake juyawa (obj) {harka Integer i -> String.format("int%d", i); harka Dogon l -> String.format("dogon%d", l); harka Biyu d -> String.format("biyu%f", d); case String s -> String.format("String %s", s); tsoho -> o.toString (); }; }
  • An ƙara aiwatar da aikin farko na biyu na FFM (Ayyukan Ƙasashen waje & Ƙwaƙwalwa) API, wanda ke ba ku damar tsara hulɗar shirye-shiryen Java tare da lambar waje da bayanai ta hanyar ayyukan kira daga ɗakunan karatu na waje da samun damar ƙwaƙwalwar ajiya a waje da JVM.
  • An ƙara samfoti na biyu na zaren kama-da-wane, waɗanda zaren nauyi ne masu nauyi waɗanda ke sauƙaƙe rubutu da kiyaye manyan aikace-aikace masu zare da yawa.
  • An ƙara API na gwaji na biyu don daidaitacce daidaitaccen tsari, wanda ke sauƙaƙe haɓaka aikace-aikacen zaren da yawa ta hanyar kula da ayyuka da yawa da ke gudana a cikin zaren daban-daban azaman toshe guda ɗaya.
  • An ƙara samfoti na biyar na Vector API, yana ba da ayyuka don lissafin vector waɗanda aka yi ta amfani da umarnin vector akan x86_64 da na'urori na AArch64 kuma suna ba da damar aiwatar da ayyuka a lokaci guda zuwa ƙima mai yawa (SIMD). Ba kamar iyawar da aka bayar a cikin HotSpot JIT mai tarawa don sarrafa kai-da-kai na ayyukan scalar, sabon API yana ba da damar sarrafa vectorization a sarari don sarrafa bayanai daidai gwargwado.

source: budenet.ru

Add a comment