JavaRush /Java Blog /Random-IT /Pausa caffè #21. Integrazione di Python con Java. Conosce...

Pausa caffè #21. Integrazione di Python con Java. Conoscere Jakarta EE ed Eclipse MicroProfile

Pubblicato nel gruppo Random-IT

Integrazione di Python con Java? Perché no!

Fonte: Jaxenter Pausa caffè #21.  Integrazione di Python con Java.  Conoscere Jakarta EE ed Eclipse MicroProfile - 1 In realtà, la combinazione di linguaggi di programmazione e di scripting non è un concetto nuovo e strano: è solo usata raramente. Per i linguaggi di programmazione che hanno un'interfaccia applicativa binaria comune, è del tutto possibile combinarli in un'unica libreria o eseguibile. Anche se questo rende il tutto un po’ più difficile, ci sono strumenti che possono aiutare. Python e Java in realtà si completano a vicenda. Ad esempio, puoi utilizzarne uno per attività secondarie tipiche e l'altro come linguaggio di scripting per estendere le impostazioni della tua applicazione. Quando si tratta di integrare altri linguaggi, JavaScript, ad esempio, non viene generalmente utilizzato al di fuori dei browser web, almeno rispetto ad altri linguaggi di scripting come Perl, Tcl, Visual Basic e Python. Tuttavia, tutte queste lingue sono solitamente combinate con altre lingue. Python è stato tradizionalmente combinato con C e C++, mentre Visual Basic è spesso il linguaggio di scripting preferito per C++ sulla piattaforma Windows. E Perl, come Tcl, è comunemente usato su C/Unix. Python viene utilizzato un po' più spesso su Windows poiché si integra facilmente con l'architettura Microsoft Scripting Host e con COM. Inoltre, è ottimo anche per gli strumenti macOS.

Perché Java e Python?

Python è un linguaggio di scripting orientato agli oggetti, che lo rende un buon abbinamento per Java. In combinazione con un interprete Python scritto interamente in Java, come Jython, puoi scrivere intere applet in Python, che possono quindi essere eseguite in qualsiasi browser compatibile con JDK, con un'esecuzione del codice veloce quasi quanto C/CPython. L'interprete Jython traduce il codice sorgente Python direttamente in bytecode Java, conferendogli una velocità incredibile. Ma altre soluzioni di scripting Java (Java/TCL, Java/Perl, ecc.) collegano la JVM all'implementazione C in questi linguaggi, il che non solo crea un problema di portabilità, ma queste soluzioni stesse non sono così facili come vorremmo.

Qual è il modo migliore per utilizzare Java e JPython insieme?

Esistono numerosi strumenti comprovati che implementano Python in Java o viceversa, quindi puoi eseguire comandi da una lingua in un'altra. Ecco un breve elenco di alcuni dei migliori strumenti per l'integrazione di Python con Java:
  • Jython è Python implementato in Java.
  • JPype : consente di eseguire comandi Java utilizzando Python.
  • Jepp - Java integrato in Python.
  • JCC è un generatore di codice C++ per chiamare Java da C++/Python.
  • Javabridge è un pacchetto per eseguire e interagire con la JVM di CPython.
  • Py4j : consente di eseguire comandi Java in Python.
  • Voc è un elemento dello strumento BeeWare . Converte il codice Python in bytecode Java.
  • p2j - Converte il codice Python in Java. Non più in sviluppo.
Esistono diversi approcci all’utilizzo di questi strumenti. Ognuno ha i propri vantaggi e svantaggi. Ad esempio, puoi prototipare un'intera applicazione in Jython e, dopo diversi cicli di test e riprogettazione, riscrivere tutto in Java. Ciò ti consente di sfruttare la maggiore flessibilità e velocità di sviluppo dei linguaggi di scripting nelle prime fasi del tuo progetto. Tuttavia, il tuo prodotto finale dovrà essere un po' più dettagliato che se avessi appena iniziato a scrivere solo in Java. E se sei preoccupato per le librerie dell'interfaccia utente, Jython può collegarsi alle stesse UIL del normale Java, quindi convertire Java dovrebbe essere un gioco da ragazzi. Tuttavia, le cose non sono così semplici se stai cercando di realizzare un progetto di grandi dimensioni. Probabilmente incontrerai lo svantaggio di vari componenti e livelli che hanno cicli di sviluppo indipendenti, come i componenti di livello superiore. Naturalmente, puoi riscrivere singoli componenti in Java man mano che ti avvicini a una versione stabile, o semplicemente scrivere alcuni dei tuoi componenti esclusivamente in Java dall'inizio. Un'altra opzione è riscrivere solo i componenti per i quali le prestazioni sono importanti. In questo modo, puoi lasciare i componenti di alto livello in Jython, il che significa che devi riscrivere solo i componenti di livello inferiore e in alcuni casi non dovrai riscrivere nulla.

Presentazione di Jakarta EE ed Eclipse MicroProfile

Fonte: DZone Non hai ancora sentito parlare di Jakarta EE ed Eclipse MicroProfile? Quindi, è tempo di conoscere come si è sviluppato lo standard Java Enterprise. Entrambe queste tecnologie ti saranno sicuramente utili in futuro, poiché sono ottime per creare applicazioni aziendali moderne e native del cloud.

Cos'è Giakarta EE?

Jakarta EE è un insieme di specifiche (JAX-RS, CDI, JPA, JSON-P, ecc.) per la scrittura di applicazioni aziendali in Java. Queste specifiche sono documenti che definiscono l'API e il modo in cui la tecnologia interagisce. Pausa caffè #21.  Integrazione di Python con Java.  Conoscere Jakarta EE ed Eclipse MicroProfile - 2I documenti delle specifiche sono come interfacce con definizioni formali e l'effettiva implementazione di queste interfacce dipende dal fornitore del server delle applicazioni (ad esempio WildFly, Open Liberty, Payara, TomEE). Per impedire a un fornitore di implementare una specifica in modo errato, ciascuna specifica fornisce un Technology Compatibility Kit (CTS). Si tratta di una serie di test per verificare la conformità di un'implementazione di una particolare specifica. Una volta che il server delle applicazioni trasmette il CST per tutte le specifiche, è conforme all'intero standard. Per molti anni Java EE è stato il modo standard per scrivere applicazioni aziendali. Java EE (precedentemente chiamato J2EE) è supportato da Oracle da molto tempo. Nel 2017 Oracle ha deciso di non sviluppare più lo standard aziendale sotto i suoi auspici e di trasferirlo alla Eclipse Foundation. Per motivi legali, hanno dovuto cambiare il marchio e hanno deciso di chiamare il prodotto Jakarta EE. Puoi trovare tutte le specifiche di Jakarta EE sul sito web ufficiale e puoi ottenere maggiori informazioni su come funziona attualmente il processo di specifica sul sito web della Eclipse Foundation.

Cos'è Eclipse MicroProfile?

Poiché il processo di rilascio e adattamento delle nuove funzionalità per Java EE è stato piuttosto lento, un gruppo di fornitori e membri della comunità ha deciso di creare MicroProfile nel 2016. L'obiettivo principale di questo progetto era aiutare gli sviluppatori a stare al passo con i tempi e anche ottimizzare la piattaforma esistente per l'architettura dei microservizi. Attualmente, Eclipse MicroProfile contiene dodici specifiche. Quattro di loro fanno parte anche di Jakarta EE. Ciò consente di creare applicazioni autonome esclusivamente con MicroProfile. Tutte le specifiche sono indipendenti dal fornitore e l'implementazione viene fornita con il server delle applicazioni. Le specifiche Jakarta EE possono essere considerate una solida base per la creazione di applicazioni aziendali. Oltre a ciò, Eclipse MicroProfile colma una lacuna nella creazione di sistemi distribuiti poiché la tecnologia segue la metodologia applicativa a dodici fattori .
Commenti
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION