JavaRush /Blog Java /Random-FR /Pause café #21. Intégration de Python avec Java. Apprendr...

Pause café #21. Intégration de Python avec Java. Apprendre à connaître Jakarta EE et Eclipse MicroProfile

Publié dans le groupe Random-FR

Intégration Python avec Java ? Pourquoi pas!

Source : Jaxenter Pause café #21.  Intégration de Python avec Java.  Apprendre à connaître Jakarta EE et Eclipse MicroProfile - 1 En fait, combiner la programmation système et les langages de script n'est pas un nouveau concept étrange : il est simplement rarement utilisé. Pour les langages de programmation qui possèdent une interface d’application binaire commune, il est tout à fait possible de les combiner en une seule bibliothèque ou exécutable. Même si cela rend les choses un peu plus difficiles, il existe des outils qui peuvent vous aider. Python et Java se complètent en fait. Par exemple, vous pouvez utiliser l'un d'eux pour des sous-tâches typiques et l'autre comme langage de script pour étendre les paramètres de votre application. Lorsqu'il s'agit d'intégrer d'autres langages, JavaScript, par exemple, n'est généralement pas utilisé en dehors des navigateurs Web, du moins par rapport à d'autres langages de script tels que Perl, Tcl, Visual Basic et Python. Cependant, toutes ces langues sont généralement combinées avec d’autres langues. Python est traditionnellement associé au C et au C++, tandis que Visual Basic est souvent le langage de script de choix pour le C++ sur la plateforme Windows. Et Perl, comme Tcl, est couramment utilisé sur C/Unix. Python est utilisé un peu plus souvent sous Windows car il s'intègre facilement à l'architecture Microsoft Scripting Host ainsi qu'à COM. De plus, c'est également idéal pour les outils macOS.

Pourquoi Java et Python ?

Python est un langage de script orienté objet, ce qui en fait un bon complément à Java. En combinaison avec un interpréteur Python entièrement écrit en Java, tel que Jython, vous pouvez écrire des applets entières en Python, qui peuvent ensuite s'exécuter dans n'importe quel navigateur compatible JDK, avec une exécution de code presque aussi rapide que C/CPython. L'interpréteur Jython traduit le code source Python directement en bytecode Java, ce qui lui confère une vitesse incroyable. Mais d'autres solutions de script Java (Java/TCL, Java/Perl, etc.) attachent la JVM à l'implémentation C dans ces langages, ce qui crée non seulement un problème de portabilité, mais ces solutions elles-mêmes ne sont pas aussi simples que nous le souhaiterions.

Quelle est la meilleure façon d’utiliser Java et JPython ensemble ?

Il existe un certain nombre d'outils éprouvés qui implémentent Python en Java ou vice versa, afin que vous puissiez exécuter des commandes d'un langage dans un autre. Voici une courte liste de certains des meilleurs outils pour intégrer Python à Java :
  • Jython est Python implémenté en Java.
  • JPype - Vous permet d'exécuter des commandes Java en utilisant Python.
  • Jepp - Java intégré à Python.
  • JCC est un générateur de code C++ permettant d'appeler Java depuis C++/Python.
  • Javabridge est un package permettant d'exécuter et d'interagir avec la JVM de CPython.
  • Py4j - Vous permet d'exécuter des commandes Java en Python.
  • Voc est un élément de l' outil BeeWare . Convertit le code Python en bytecode Java.
  • p2j - Convertit le code Python en Java. N'est plus en développement.
Il existe plusieurs approches pour utiliser ces outils. Chacun a ses propres avantages et inconvénients. Par exemple, vous pouvez prototyper une application entière en Jython et, après plusieurs séries de tests et de refonte, tout réécrire en Java. Cela vous permet de profiter de la flexibilité et de la rapidité accrues du développement de langages de script dès le début de votre projet. Cependant, votre produit final devra être un peu plus détaillé que si vous veniez de commencer à écrire uniquement en Java. Et si vous vous inquiétez des bibliothèques d'interface utilisateur, Jython peut se connecter aux mêmes UIL que Java standard, donc la conversion de Java devrait être un jeu d'enfant. Cependant, les choses ne sont pas si simples si vous essayez de construire un grand projet. Vous rencontrerez probablement l'inconvénient du fait que divers composants et couches ont des cycles de développement indépendants, tels que les composants de niveau supérieur. Bien entendu, vous pouvez réécrire des composants individuels en Java à mesure que vous vous rapprochez d'une version stable, ou simplement écrire certains de vos composants exclusivement en Java dès le début. Une autre option consiste à réécrire uniquement les composants pour lesquels les performances sont importantes. De cette façon, vous pouvez laisser les composants de haut niveau dans Jython, ce qui signifie que vous n'avez besoin que de réécrire les composants de niveau inférieur et, dans certains cas, vous n'aurez rien à réécrire du tout.

Présentation de Jakarta EE et Eclipse MicroProfile

Source : DZone Vous n'avez pas encore entendu parler de Jakarta EE et d'Eclipse MicroProfile ? Il est donc temps de vous familiariser avec l'évolution du standard Java Enterprise. Ces deux technologies vous seront certainement utiles à l’avenir, car elles sont idéales pour créer des applications d’entreprise cloud natives et modernes.

Qu’est-ce que Jakarta EE ?

Jakarta EE est un ensemble de spécifications (JAX-RS, CDI, JPA, JSON-P, etc.) permettant d'écrire des applications d'entreprise en Java. Ces spécifications sont des documents qui définissent l'API et la manière dont la technologie interagit. Pause café #21.  Intégration de Python avec Java.  Apprendre à connaître Jakarta EE et Eclipse MicroProfile - 2Les documents de spécifications sont comme des interfaces avec des définitions formelles, et la mise en œuvre réelle de ces interfaces dépend du fournisseur de serveur d'applications (par exemple WildFly, Open Liberty, Payara, TomEE). Pour empêcher un fournisseur d'implémenter une spécification de manière incorrecte, chaque spécification fournit un kit de compatibilité technologique (CTS). Il s'agit d'un ensemble de tests permettant de vérifier la conformité d'une implémentation d'une spécification particulière. Une fois que le serveur d'applications transmet le CST pour toutes les spécifications, il est conforme à l'ensemble de la norme. Depuis de nombreuses années, Java EE constitue le moyen standard d'écrire des applications d'entreprise. Java EE (anciennement appelé J2EE) est pris en charge par Oracle depuis longtemps. En 2017, Oracle a décidé de ne plus développer le standard d'entreprise sous ses auspices et l'a transféré à la Fondation Eclipse. Pour des raisons juridiques, ils ont dû changer de nom et ont décidé d'appeler le produit Jakarta EE. Vous pouvez trouver toutes les spécifications de Jakarta EE sur le site officiel et vous pouvez obtenir plus d'informations sur le fonctionnement actuel du processus de spécification sur le site Web de la Fondation Eclipse.

Qu’est-ce qu’Eclipse MicroProfile ?

Le processus de publication et d'adaptation de nouvelles fonctionnalités pour Java EE étant assez lent, un groupe de fournisseurs et de membres de la communauté a décidé de créer MicroProfile en 2016. L'objectif principal de ce projet était d'aider les développeurs à rester dans l'air du temps et également d'optimiser la plateforme existante pour l'architecture des microservices. Actuellement, Eclipse MicroProfile contient douze spécifications. Quatre d'entre eux font également partie de Jakarta EE. Cela vous permet de créer des applications autonomes exclusivement avec MicroProfile. Toutes les spécifications sont indépendantes du fournisseur et la mise en œuvre est fournie avec le serveur d'applications. Les spécifications Jakarta EE peuvent être considérées comme une base solide pour la création d’applications d’entreprise. En plus de cela, Eclipse MicroProfile comble une lacune dans la création de systèmes distribués car la technologie suit la méthodologie d'application à douze facteurs .
Commentaires
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION