Jython还是JRuby?
这是一个比较高层次的概念性问题。我有两个不同的代码库,它们的功能是一样的,一个是用Python写的,另一个是用Ruby写的。我需要开发一个可以在JVM上运行的东西。所以我有两个选择:把Python代码转换成Jython,或者把Ruby代码转换成JRuby。因为我对这两者都不太了解,所以想问问有没有人能给我一些建议。比如,哪个运行得更快,或者更重要的是,哪个有工具可以方便地进行代码迁移(从.pyc文件到.jar文件)?
5 个回答
1
你在一个语言里能做的事情,在另一个语言里也能做到。
多了解这两种语言,看看哪一种更符合你的编程习惯。这里没有对错之分。
2
如果你打算在这两个平台上投入时间和精力,最好先看看这两个平台的开发活跃程度。可以订阅一些邮件列表和新闻组,了解一下社区的情况,查看这两个项目的源代码管理系统,感受一下开发的活跃度。
我对Python比对Ruby更熟悉。Jython项目在经历了一段时间的缓慢发展后,现在真的开始加速了,6月份发布了一个兼容Python 2.5的版本。这是一个重要的进步,因为Python 2.5引入了一些非常有用的语言增强功能:http://docs.python.org/whatsnew/2.5.html
5
在这两种情况下,大部分代码应该都能正常运行。我不知道有什么特别的理由让你在从零开始学习时选择Jython而不是JRuby,或者反过来。Python非常注重代码的可读性,并且不喜欢使用“魔法”般的写法,而Ruby则允许你做一些更花哨的事情,比如自己定义一种特定的语言。主要的区别在于社区,基本上是因为它们各自关注的点不同。