JavaRush /Java Blog /Random-TK /Kofe arakesmesi # 21 Python-y Java bilen birleşdirmek. Ja...

Kofe arakesmesi # 21 Python-y Java bilen birleşdirmek. Jakarta EE we Eclipse MicroProfile bilen tanyşmak

Toparda çap edildi

Java bilen Python integrasiýasy? Näme üçin beýle däl!

Çeşme: Jaxenter Kofe arakesmesi # 21  Python-y Java bilen birleşdirmek.  Jakarta EE we Eclipse MicroProfile bilen tanyşmak - 1 Aslynda ulgam programmirleme we skript dillerini birleşdirmek geň täze düşünje däl: diňe seýrek ulanylýar. Umumy ikilik programma interfeýsi bolan programmirleme dilleri üçin olary bir kitaphana ýa-da ýerine ýetirip boljak bir ýere jemlemek düýbünden mümkindir. Bu zatlary birneme kynlaşdyrsa-da, kömek edip biljek gurallar bar. Python we Java aslynda biri-birini doldurýar. Mysal üçin, olaryň birini adaty subtasklar üçin, beýlekisini bolsa programmaňyzyň sazlamalaryny giňeltmek üçin skript dili hökmünde ulanyp bilersiňiz. Beýleki dilleri birleşdirmek nukdaýnazaryndan JavaScript, adatça, Perl, Tcl, Visual Basic we Python ýaly beýleki skript dilleri bilen deňeşdirilende web brauzerleriniň daşynda ulanylmaýar. Şeýle-de bolsa, bu dilleriň hemmesi beýleki diller bilen birleşdirilýär. Python adatça C we C ++ bilen birleşdirildi, Visual Basic köplenç Windows platformasynda C ++ üçin saýlama ýazuw dili bolup durýar. Perl, Tcl ýaly, C / Unix-de köplenç ulanylýar. Python, Microsoft Scripting Host arhitekturasy we COM bilen aňsat birleşýändigi üçin Windows-da birneme ýygy ulanylýar. Mundan başga-da, macOS gurallary üçin hem ajaýyp.

Näme üçin Java we Python?

Python obýekte gönükdirilen skript dilidir we ony Java üçin gowy gabat getirýär. Jython ýaly Java-da tutuşlygyna ýazylan Python terjimeçisi bilen bilelikde Python-da ähli programmalary ýazyp bilersiňiz, soňra JDK-a gabat gelýän islendik brauzerde işledilip bilner, kod ýerine ýetirilişi C / CPython ýaly çalt. Jython terjimeçisi Python deslapky kody gönüden-göni Java bytekodyna terjime edýär we ajaýyp tizlik berýär. Otheröne beýleki Java skript çözgütleri (Java / TCL, Java / Perl we ş.m.) JVM-ni bu dillerde C ýerine ýetirişine birikdirýär, bu diňe bir göçme meseläni döretmeýär, bu çözgütleriň özi isleýşimiz ýaly aňsat däl.

Java we JPython-y bilelikde ulanmagyň iň gowy usuly haýsy?

Python-y Java-da ýa-da tersine ýerine ýetirýän birnäçe subut edilen gural bar, şonuň üçin bir dilden başga bir dilde buýruklary işledip bilersiňiz. Python-y Java bilen birleşdirmek üçin iň oňat gurallaryň gysga sanawy:
  • Jython , Java-da ýerine ýetirilen Python.
  • JPype - Python ulanyp, Java buýruklaryny işletmäge mümkinçilik berýär.
  • Jepp - Java Python-a guruldy.
  • JCC , Java ++ C ++ / Python-dan jaň etmek üçin C ++ kod generatory.
  • Javabridge, CPython-dan JVM bilen işlemek we täsirleşmek üçin bukjadyr.
  • Py4j - Python-da Java buýruklaryny işletmäge mümkinçilik berýär.
  • Voc , BeeWare guralynyň elementidir . Python koduny Java bytekodyna öwürýär.
  • p2j - Python koduny Java-a öwürýär. Indi ösüşde däl.
Bu gurallary ulanmagyň birnäçe çemeleşmesi bar. Hersiniň öz artykmaçlyklary we kemçilikleri bar. Mysal üçin, Jython-da tutuş bir programmany prototip edip bilersiňiz we birnäçe gezek synagdan soň täzeden dizaýn edip, Java-da hemme zady täzeden ýazyp bilersiňiz. Bu, taslamaňyzyň başynda skript dillerini ösdürmegiň çeýeliginden we tizliginden peýdalanmaga mümkinçilik berýär. Şeýle-de bolsa, soňky önümiňiz diňe Java-da ýazyp başlanyňyzdan birneme has jikme-jik bolmaly. UI kitaphanalary barada alada edýän bolsaňyz, Jython adaty Java ýaly UIL-lere girip biler, şonuň üçin Java-y öwürmek şemal bolmaly. Şeýle-de bolsa, uly bir taslama gurjak bolsaňyz, beýle bir ýönekeý däl. Iň ýokary derejeli komponentler ýaly garaşsyz ösüş siklleri bolan dürli komponentleriň we gatlaklaryň kemçiliklerine duçar bolarsyňyz. Elbetde, durnukly goýberilişe ýakynlaşanyňyzda Java-da aýratyn komponentleri täzeden ýazyp bilersiňiz ýa-da käbir komponentleriňizi başdan Java-da diňe ýazyp bilersiňiz. Başga bir wariant, diňe öndürijilik möhüm bolan komponentleri täzeden ýazmakdyr. Şeýlelik bilen, Jython-da ýokary derejeli komponentleri goýup bilersiňiz, bu diňe aşaky derejeli komponentleri täzeden ýazmalydygyňyzy aňladýar we käbir ýagdaýlarda asla täzeden ýazmaly bolmaz.

Jakarta EE we Eclipse MicroProfile bilen tanyşdyrmak

Çeşme: DZone Jakarta EE we Eclipse MicroProfile hakda entek eşitmediňizmi? Şeýlelik bilen, Java Enterprise standartynyň nähili ösendigi bilen tanyşmagyň wagty geldi. Bu tehnologiýalaryň ikisi-de geljekde siziň üçin peýdaly boljakdygyna ynanýarsyňyz, sebäbi bulutly we häzirki zaman kärhana goşundylaryny gurmak üçin ajaýyp.

Jakarta EE näme?

Jakarta EE, Java-da kärhana programmalaryny ýazmak üçin aýratynlyklar toplumy (JAX-RS, CDI, JPA, JSON-P we ş.m.). Bu aýratynlyklar, API-ni we tehnologiýanyň özara täsirini kesgitleýän resminamalardyr. Kofe arakesmesi # 21  Python-y Java bilen birleşdirmek.  Jakarta EE we Eclipse MicroProfile bilen tanyşmak - 2Spesifikasiýa resminamalary resmi kesgitlemeler bilen interfeýslere meňzeýär we bu interfeýsleriň hakyky ýerine ýetirilmegi programma serweri satyjysyna bagly (meselem, WildFly, Açyk azatlyk, Payara, TomEE). Satyjynyň spesifikasiýany nädogry ýerine ýetirmeginiň öňüni almak üçin, her bir spesifikasiýa Tehnologiýa laýyklyk toplumyny (CTS) üpjün edýär. Bu, belli bir spesifikasiýanyň ýerine ýetirilişine laýyklygyny barlamak üçin synaglar toplumy. Programma serweri ähli aýratynlyklar üçin CST-ni iberenden soň, ähli standartlara laýyk gelýär. Java EE köp ýyllaryň dowamynda kärhana programmalaryny ýazmagyň adaty usulydy. Java EE (ozal J2EE diýilýärdi) Oracle tarapyndan uzak wagtlap goldanylýar. 2017-nji ýylda Oracle, howandarlygynda korporatiw standarty mundan beýläk ösdürmezlik kararyna geldi we ony Eclipse gaznasyna geçirdi. Kanuny sebäplere görä rebrend etmeli boldular we önüme Jakarta EE diýip at bermek kararyna geldiler. Jakartaakarta EE aýratynlyklarynyň hemmesini resmi web sahypasynda tapyp bilersiňiz we spesifikasiýa işiniň häzirki wagtda “Eclipse Foundation” web sahypasynda nähili işleýändigi barada has giňişleýin maglumat alyp bilersiňiz.

“Eclipse MicroProfile” näme?

Java EE üçin täze aýratynlyklary çykarmak we uýgunlaşdyrmak prosesi gaty haýal bolansoň, satyjylar we jemgyýetçilik agzalary 2016-njy ýylda MicroProfile döretmek kararyna geldiler. Bu taslamanyň esasy maksady, döredijilere döwrüň yzyndan ýetmäge kömek etmek we mikroservis arhitekturasy üçin bar bolan platformany optimizirlemekdi. Häzirki wagtda “Eclipse MicroProfile” on iki aýratynlygy öz içine alýar. Olaryň dördüsi hem Jakarta EE-iň bir bölegidir. Bu, diňe MicroProfile bilen özbaşdak programmalary döretmäge mümkinçilik berýär. Spechli aýratynlyklar satyjy garaşsyz we ýerine ýetiriş programma serweri bilen gelýär. Jakarta EE spesifikasiýalary kärhana goşundylaryny gurmak üçin berk esas hasaplanyp bilner. Bulardan başga-da, “Eclipse MicroProfile” tehnologiýa “ On iki faktor” usulyýetine eýerýändigi sebäpli paýlanan ulgamlary gurmakdaky boşlugy doldurýar .
Teswirler
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION