JavaRush /Java Blog /Random-TK /2022-nji ýylda Java tendensiýalary: JDK 18 we 19, Taslama...

2022-nji ýylda Java tendensiýalary: JDK 18 we 19, Taslama dokma we maglumatlar mesh

Toparda çap edildi
2022-nji ýyl başlandy. Adamlaryň köpüsi henizem Täze ýyl dynç alyşlarynda şampan we Oliwier bilen bile bolsalar, Java dünýäsindäki tendensiýalar barada gürleşeris. Belki, bu size karýeraňyzy seljermäge, täze tehnologiýany öwrenmäge ýa-da geljek ýyl üçin ösüş meýilnamasyny düzmäge kömek eder. 2022-nji ýylda Java tendensiýalary: JDK 18 we 19, Taslama dokma we maglumatlar mesh - 1Java dili hünärmeni we lektor Andreý Rodionow, şeýle hem EPAM-nyň çözgüt arhitektory we “Devoxx Ukraina” programma komitetiniň başlygy Oleg Tsal-Tsalko 2022-nji ýylda Java-a garaşýan we ýakyn geljekde çykyş etdi.

2022-nji ýylda Java üçin nähili perspektiwalar bar?

2022-nji ýylda Java tendensiýalary: JDK 18 we 19, Taslama dokma we maglumatlar mesh - 2Bu ýyl indiki iki wersiýanyň çykmagyna garaşýarys: JDK 18 (mart aýynda) we JDK 19 (sentýabr aýynda). JDK 18-de Java döredijileriniň köpüsi üçin gyzykly zatlar aşakdakylary öz içine alyp biler:
  • Içerki ýönekeý web serweri, Python, Ruby, PHP-de şuňa meňzeş kiçi web serwerlerine meňzeş çalt prototip ýazmak we synag üçin ulanyp boljak servlet konteýnerini goldaýan.
  • Nusga laýyklygy gowulaşmagyny dowam etdirýär.
JDK 19 barada aýdylanda bolsa, “Early-Access Build” eýýäm bar, ýöne entek oňa goşulmagy meýilleşdirilýän zatlaryň resmi sanawy ýok. JDK 19-da iň bolmanda Taslama Loom-yň ilkinji durnukly prototipini öz içine aljakdygyna ynanasym gelýär, bu taslama spesifikasiýalary ýaňy-ýakynda peýda boldy we iň soňky gurluşy JDK 19-a esaslanýar. Aşakda has jikme-jik gürleşeris.

Java haýsy ugurlar üçin ýeke-täk çözgüt bolup galýar we nirede has amatly?

Andreý Rodionow:

Bagtymyza, haýsydyr bir sebit üçin Java-dan başga alternatiwanyň ýokdugyny aýdyp bilmeris, ýöne Java programmalaryny, arka taraplaryny we mikroservislerini ösdürmek üçin altyn bir görnüş hökmünde gürleşip bileris. Dürli satyjylardan (Oracle-dan başga) dürli JDK paýlamalarynyň köpelýändigini bellemelidiris: Amazon, Microsoft, Alibaba, Red Hat, Bellsoft (Sankt-Peterburgdaky Oracle Ösüş Merkeziniň adamlary tarapyndan esaslandyryldy) we başgalar. Paýlamalaryň doly toplumy şu ýerde . 2022-nji ýylda Java tendensiýalary: JDK 18 we 19, Taslama dokma we maglumatlar mesh - 3Elmydama alternatiwalar bar, ýöne Java kärhanany ösdürmegiň arkasynda iň uly ulanylyşyny tapýar. Uly kompaniýalaryň köpüsi uly we çylşyrymly ulgamlary üçin Java saýlaýarlar. Sebäpleri birmeňzeş: bazardaky işläp düzüjileriň we tejribäniň, ägirt ekosistemanyň we güýçli JVM platformasynyň.

Java bilen deňeşdirilende beýleki jvm dilleriniň, esasanam Kotliniň geljegi nähili?

Andreý Rodionow:

Haýsy JVM dilleriniň meşhurdygyna düşünmek üçin diňe Bahar, Micronaut, Vert.x üçin resminamalary açyň we kod mysallarynyň haýsy dillerde berilýändigini görüň - Java we Kotlin. Taslamalaryň Kotline köpçülikleýin geçendigini aýdyp bolmaz, ýöne arkadaky meşhurlygy artýar we köp çarçuwalar ony ekosistemasyna girizmäge synanyşýarlar. Scala barada aýdylanda bolsa, täze wersiýalary çykýar we ML, maglumatlary gaýtadan işlemek we amaly programmirleme paradigmasynyň has amatly ýerinde has işjeň ulanylýar.

Oleg Tsal-Tsalko:

Beýleki JVM dilleri diýseň özüne çekiji we häzirki wagtda bir taslamanyň birnäçe programmirleme dillerini ulanmagy adaty bir zat. Täze dörän JVM dilleriniň Java-ny çalşyp bilmezliginiň sebäpleri aşakdaky ýaly:
  • Olar beýle bir gowy däl welin, her kim diňe olary alyp, olara geçer.
  • Java bilen bir segmentde ulanylýar.
  • Java kem-kemden beýleki dillerden iň gowusyny alýar we has gowulaşýar.

Has gysga aralyk wagtlary sebäpli Java hiliniň peselmegi bolarmy?

Oleg Tsal-Tsalko:

Nook diýip pikir edýärin. Iň bärkisi, ýygy-ýygydan çykýanlardan has oňyn zatlary kesgitläp bilerin. Täze ajaýyp aýratynlyklaryň has ýygy ýüze çykýandygyny görýäris. Indi dilde täze bir zadyň peýda bolmagy üçin 5 ýyl garaşmak hökman däl. Elbetde, indi Java 8 ýaly ajaýyp çykmalara garaşmaly dälsiňiz, sebäbi aýratynlyklar indi kiçijik gaýtalanmalarda ýüze çykýar.

Java-yň täze wersiýalarynda döredijiler üçin aýratyn möhüm aýratynlyklar barmy?

Oleg Tsal-Tsalko:

Java-yň soňky wersiýalarynda “Pattern Matching”, “Möhürli synplar” we “Records” ýaly birnäçe gyzykly aýratynlyk bar. Olaryň mümkinçiliklerine seretmegi maslahat bererin. Elbetde, iň çynlakaý we garaşylýan aýratynlyklar “Taslama Loom” we “Valhalla” taslamalarynda meýilleşdirilýär, ýöne bu taslamalaryň aýratynlyklary hem kem-kemden çykar diýip pikir edýärin.

Bahar çarçuwasy: dürli zerurlyklara laýyklykda ekosistemasyny giňeltmegi dowam etdirermi?

Andreý Rodionow:

“Bahar çarçuwasy” barada aýdylanda bolsa, onuň ösüşi “Bahar buludynyň” dürli aýratynlyklaryny goldamaga we geljekde “Bahar ýadrosy” -nyň bir bölegi bolmagy meýilleşdirilýän “Bahar dogduk mekany” atly “Bahar Boot” -y ýerli ikiliklere jemlemek ukybyna gönükdirildi. Bu nukdaýnazardan, şöhlelenmäniň işjeň ulanylmagy we dinamiki kod döretmek sebäpli Bahar Micronaut we Quarkus-dan yza galdy. Bahar çarçuwasy 6 barada aýdanymda, 6-njy bahar we ondan soňky hasabaty görmegi maslahat berýärin, Bahar çarçuwasy 6-da näme täzelik bar? “Joker” konferensiýasyndan (Oleg Dokuka we Alekseý Nesterowdan). Esasylary JDK 17-e geçmek, XML konfigurasiýasyndan we sazlaýjylaryň üsti bilen “Autowire” -den ýüz öwürmek, “Kotlin” goldawyny we “Spring Fu” taslamasyny ösdürmekdir.

Oleg Tsal-Tsalko:

Häzirki wagtda iň meşhur Java FW hökmünde bahar, elinden ýüz öwürmek islemeýär. Ösüş toparynyň Baharyň ösüşine iň güýçli tagallalaryny etjekdigine ynanýaryn. Bahar barha köp ýerleri doldurýar. Mysal üçin, Bahar Taslama Reaktory bilen Reaktiw Akymlar / Reaktiw Programma meýdanynda köp iş etdi. Indi olar RSoket protokolyny öňe sürýärler, bu hem geljegi uly görünýär.

“Loom” taslamasy barada bize aýdyň: bu näme üçin, haýsy meseleleri çözýär?

Andreý Rodionow:

Taslama Loom, ähtimal JVM platformasy we JVM-iň üstündäki ähli diller üçin täze tektoniki üýtgeşiklige öwrülip biljek iň gyzykly täzelikdir. Taslama Loom ýönekeý işläp düzüjilere kän bir täsir edip bilmez, ýöne köp okalmagy ulanýan tutuş ekosistema, kitaphanalara, çarçuwalara we beýleki JVM dillerine täsir eder. Taslama Loom täze sapak abstraksiýasyny - wirtual sapaklary (koroutinlere meňzeş) hödürleýär. Öň Java sapagy operasiýa ulgamy (OS) sapagy bilen gönüden-göni baglanyşykly bolsa we Java-da täze sapagyň döredilmegi täze OS sapagynyň döremegine sebäp bolan bolsa, wirtual sapaklar bilen bu ýeke-täk gatnaşyk bozulýar. Täze wirtual sapak döredilende täze OS sapagy döredilmez we daşaýjy sapaklar diýlip atlandyrylýanlardan biri (OS sapak basseýniniň haýsydyr bir meňzeşligi) göni hasaplamalar üçin gaýtadan ulanylar. Şeýlelik bilen, bir OS sapagynyň üstünde birnäçe wirtual sapak bolup biler. Hasaplaýyş meseleleri üçin wirtual sapaklaryň bu modeli hiç hili artykmaçlyk bermeýär we hasaplamalaryň tizligini haýalladýar, ýöne HTTP haýyşlaryny gaýtadan işlemek, maglumat bazasyndan ýa-da mikroservislerden jogaplara garaşmak ýaly amallary blokirlemek üçin bu model bolar möhüm artykmaçlygydyr. Hakykat, häzirki sapak modeli bilen, Java sapagyny blokirlemek / garaşmak boş OS sapaklaryna sebäp boldy - bu serişde ýitirmekdi we has köp OS sapaklaryny döretmegi talap etdi. Wirtual sapak modelinde, wirtual sapakda blokirlemek / garaşmak, üstündäki wirtual sapagyň çykýan göterijiniň sapagynyň we başga bir wirtual sapagyň işlemegine sebäp bolar. Şeýlelik bilen, OS sapaklary has amatly ulanylar we şuňa meňzeş işleri ýerine ýetirmek üçin az sanlysy gerek bolar. Şoňa laýyklykda kitaphanalary, çarçuwalary we JVM dillerini öndürijiler öz kodlaryny wirtual sapaklar üçin uýgunlaşdyrmaly bolarlar. Şonuň üçin olar üçin uly bir täzeden ýazmak gelýär :) Wirtual sapak modelinden başga-da, sapak orkestrini ýönekeýleşdirmek üçin täze bir API hödürlemek meýilleşdirilýär - gurluşly ylalaşyk diýilýär. Indi, mysal üçin, gurluşly ylalaşyk Kotlin koroutinlerinde we Scala ZIO-da işjeň ulanylýar. Gynansagam, JDK wersiýasy we hatda Taslama Loomynyň çykan ýyly henizem belli däl. Çykarylan senesi barada soralanda, Java platformasynyň baş arhitektory Braýan Goetz filosofiki jümle bilen jogap berýär: "Haçan taýýar bolar". Şonuň üçin garaşýarys we Taslama Loomynyň synag synaglaryny synap bileris .

Oleg Tsal-Tsalko:

Loom, uly bir saýawan taslamasy bolup, onuň içinde OpenJDK we Oracle topary Java we JVM-de Concurrency täzelikleriniň üstünde işleýär: wirtual sapaklar, süýümler we dowamlar. Bu aýratynlyklaryň çykmagy ýuwaş-ýuwaşdan bolar. Häzirki wagtda wirtual sapaklary goldamak üçin diňe “Early Access” gurluşlary bar. Wirtual sapaklar barada aýratyn aýdylanda, onuň esasy maksady, adaty platforma sapaklary bilen birmeňzeş semantika bilen millionlarça ýeňil sapaklary ulanyp, Java-da köp sapakly ösüş modelini ýönekeýleşdirmekdir. Kapotyň aşagynda bu sapaklar ForkJoinPool-da dolandyrylar we platforma sapaklary bilen gaýtadan ulanylar.

Global tendensiýalar dünýäsinde Java-yň ösüşi üçin nähili çaklamalar bar - mikroservisler, bulut arhitekturasy, blockchain, AI?

Andreý Rodionow:

Global tendensiýalar barada aýtsak, kän bir üýtgemedi. Öňküsi ýaly esasy tendensiýa Kubernetes we Hyzmat mesh görnüşinde onuň töweregindäki infrastruktura bolmagyny dowam etdirýär . Maglumat mesh, paýlanan maglumat çeşmelerini we ammarlaryny dolandyrmak üçin abstraksiýanyň bir görnüşi hökmünde meşhurlyk gazandy .
Teswirler
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION