JavaRush /Java Blog /Random-TW /喝咖啡休息#21。將 Python 與 Java 整合。了解 Jakarta EE 和 Eclipse Micro...

喝咖啡休息#21。將 Python 與 Java 整合。了解 Jakarta EE 和 Eclipse MicroProfile

在 Random-TW 群組發布

Python 與 Java 整合?為什麼不!

來源:Jaxenter 喝咖啡休息#21。 將 Python 與 Java 整合。 了解 Jakarta EE 和 Eclipse MicroProfile - 1實際上,將系統程式設計和腳本語言結合並不是一個奇怪的新概念:只是很少使用。對於具有通用二進位應用程式介面的程式語言,完全有可能將它們組合成單一庫或可執行檔。雖然這讓事情變得更加困難,但有一些工具可以提供幫助。Python 和 Java 其實是相輔相成的。例如,您可以將其中一種用於典型的子任務,另一種作為腳本語言來擴展應用程式的設定。例如,在整合其他語言時,JavaScript 通常不會在 Web 瀏覽器之外使用,至少與 Perl、Tcl、Visual Basic 和 Python 等其他腳本語言相比是如此。然而,所有這些語言通常都與其他語言結合在一起。Python 傳統上與 C 和 C++ 結合在一起,而 Visual Basic 通常是 Windows 平台上 C++ 的首選腳本語言。Perl 和 Tcl 一樣,普遍用於 C/Unix 上。Python 在 Windows 上使用得更頻繁,因為它可以輕鬆地與 Microsoft Scripting Host 架構以及 COM 整合。另外,它也非常適合 macOS 工具。

為什麼選擇 Java 和 Python?

Python 是一種物件導向的腳本語言,非常適合 Java。結合完全用 Java 編寫的 Python 解釋器(例如 Jython),您可以用 Python 編寫整個小程序,然後它可以在任何兼容 JDK 的瀏覽器中運行,代碼執行速度幾乎與 C/CPython 一樣快。Jython 解譯器將 Python 原始碼直接翻譯為 Java 字節碼,速度令人難以置信。但其他 Java 腳本解決方案(Java/TCL、Java/Perl 等)將 JVM 附加到這些語言的 C 實作上,這不僅產生了可移植性問題,而且這些解決方案本身並不像我們希望的那麼容易。

一起使用 Java 和 JPython 的最佳方式是什麼?

有許多經過驗證的工具可以在 Java 中實作 Python,反之亦然,因此您可以用另一種語言執行一種語言的命令。以下是一些將 Python 與 Java 整合的最佳工具的簡短清單:
  • Jython是用 Java 實作的 Python。
  • JPype - 允許您使用 Python 執行 Java 指令。
  • Jepp - Python 內建的 Java。
  • JCC是一個 C++ 程式碼產生器,用於從 C++/Python 呼叫 Java。
  • Javabridge是一個用於從 CPython 運行 JVM 並與之互動的套件。
  • Py4j - 允許您在 Python 中執行 Java 命令。
  • Voc是BeeWare工具的一個組成部分。將 Python 程式碼轉換為 Java 字節碼。
  • p2j - 將 Python 程式碼轉換為 Java。不再開發。
使用這些工具有多種方法。每個都有自己的優點和缺點。例如,您可以在 Jython 中建立整個應用程式的原型,經過幾輪測試和重新設計後,用 Java 重寫所有內容。這使您可以在專案早期利用開發腳本語言所提高的靈活性和速度。然而,您的最終產品將需要比您剛開始僅使用 Java 編寫時更詳細一些。如果您擔心 UI 庫,Jython 可以連接到與常規 Java 相同的 UIL,因此轉換 Java 應該是輕而易舉的事。然而,如果您嘗試建立一個大型項目,事情就沒那麼簡單了。您可能會遇到具有獨立開發週期的各種組件和層(例如頂級組件)的缺點。當然,當您接近穩定版本時,您可以用 Java 重寫各個元件,或者只是從一開始就只用 Java 編寫一些元件。另一種選擇是僅重寫那些效能很重要的元件。這樣,您可以將高級元件保留在 Jython 中,這意味著您只需要重寫較低層級元件,並且在某些情況下您根本不需要重寫任何內容。

Jakarta EE 與 Eclipse MicroProfile 簡介

資料來源:DZone 還沒聽過 Jakarta EE 和 Eclipse MicroProfile 嗎?因此,是時候了解 Java Enterprise 標準是如何開發的了。這兩種技術將來肯定會對您有用,因為它們非常適合建立雲端原生和現代企業應用程式。

什麼是雅加達 EE?

Jakarta EE 是一組用於以 Java 編寫企業應用程式的規格(JAX-RS、CDI、JPA、JSON-P 等)。這些規範是定義 API 以及技術如何互動的文件。 喝咖啡休息#21。 將 Python 與 Java 整合。 了解 Jakarta EE 和 Eclipse MicroProfile - 2規範文件就像具有正式定義的接口,這些接口的實際實現取決於應用伺服器供應商(例如WildFly、Open Liberty、Payara、TomEE)。為了防止供應商錯誤地實施規範,每個規範都提供了技術相容性工具包 (CTS)。這是一組用於驗證特定規範的實現的合規性的測試。一旦應用程式伺服器傳輸了所有規範的CST,它就符合整個標準。多年來,Java EE 一直是編寫企業應用程式的標準方式。Java EE(以前稱為 J2EE)長期以來一直受到 Oracle 的支援。2017年,Oracle決定不再在其支持下開發企業標準,並將其轉移給Eclipse基金會。出於法律原因,他們不得不重新命名並決定將產品命名為 Jakarta EE。您可以在官方網站上找到所有 Jakarta EE 規範,並且可以在 Eclipse 基金會網站上獲取有關規範流程當前如何運作的更多資訊。

什麼是 Eclipse MicroProfile?

由於 Java EE 的新功能發布和調整過程相當緩慢,一群供應商和社群成員決定在 2016 年創建 MicroProfile。該專案的主要目標是幫助開發人員跟上時代的步伐,並優化現有的微服務架構平台。目前,Eclipse MicroProfile 包含 12 種規格。其中四個也是 Jakarta EE 的一部分。這使您可以專門使用 MicroProfile 建立獨立應用程式。所有規範均獨立於供應商,並且隨應用程式伺服器一起實施。Jakarta EE 規範可被視為建立企業應用程式的堅實基礎。除此之外,Eclipse MicroProfile 還填補了建構分散式系統的空白,因為該技術遵循十二個因素應用程式方法。
留言
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION