Python与Java一起使用时提供了哪些额外功能?

时间:2012-03-12 07:44:23

标签: java python jython

我是一名Java开发人员。我想通过将Python作为开发语言包含在内来了解我可以添加到Java应用程序的功能和/或积极因素。

我在这里发帖,因为我没有从谷歌得到一个好的答案。我要求你不要拒绝投票,将其标记为描述性问题,以便未来的Java开发人员能够理解他如何使用Python更好地创建应用程序。

3 个答案:

答案 0 :(得分:8)

一般来说,这样做没有(整体)好处。您只需添加另一种语言,并使用自己的一组运行时功能,这些功能在很大程度上与您在Java中可以执行的操作相同。除非您有特定的理由将Python集成添加到Java应用程序中,否则这样做是非常糟糕的。

但是,在某些情况下,您可能有理由这样做:

向您的应用添加脚本功能。
如果您希望应用程序的最终用户(或者可能是附加组件或系统管理员的作者)能够编写应用程序的部分脚本,那么Python是提供它们的合理选择。还有其他不错的选择,但Python相当知名,相当成熟,具有良好的Java集成和一系列良好的功能,因此它不是一个糟糕的选择。

适应团队中的Python开发人员
如果您的团队有Python开发人员(无论出于何种原因)不愿意/能够使用Java编写,那么您可以提供支持将他们的代码包含在Java应用程序中的工具。

如果你认为用Python写作更有效率
如果您/您的团队认为编写Python代码比编写Java代码以证明将Jython运行时集成到Java应用程序的成本更高,那么您可能会采用这种方式。就个人而言,我总是会对最常用的用例提出质疑,但这取决于每个团队的决定。

与现有Python代码集成
可能存在用Python编写的库或工具,您希望在应用程序中集成这些库或工具。不是用Java重写它们,也不是试图通过命令行运行它们,而是在JVM中的Jython环境中运行它们是个好主意。

除非你有一个特定的原因,如上面列出的那个,然后简单地将Jython集成到你的应用程序中并不会给你带来任何好处,只需要额外的努力来编写和支持。如果你有其中一个原因,那么它可能有意义,这取决于你的情况。

答案 1 :(得分:2)

我知道如何通过jython使用python和java,但是向后...尝试向jython社区提问。

答案 2 :(得分:1)

第一:jython比java慢很多倍。
第二:我记得jython方向的整合 - > java不是很无聊 第3名:你得到python语法,也许是一些电池(我真的不知道这个)。这是一个加号 第四:你在python中得到了很好的重多线程支持,而不是绿线和GIL。这可能是一个加号。