Google App Engine – Java还是Python?

我注意到这是在下面的post中提到的 。 有没有人用过这两个,能否最终告诉我哪个更好? 看起来python可能更容易实现并且更快?

到目前为止,这两种实现都是相当成熟和稳固的,并且它们的function非常相似(我认为它还不是100%相等,但是朝这个方向发展)。 所以,如果你只知道这两种语言中的一种,我会说“只是为了它”。 如果您已经两者都知道,那么您不需要我的建议;-)。

如果你们两个都不知道,那么rarin会尝试在GAE的JVM端支持一些非Java语言(或多或少;-)(我相信这包括Scala,服务器端Javascript,JRuby等)那么值得一试。 如果您既不知道也不想冒“非一流支持的语言”的风险,我绝对同意您的观察,即Python的学习速度更快(但当然我偏向于Python; – )。

我用过这两个,我的结论是最大的区别在于图书馆。 从理论上讲,两者都有很好的库可以做几乎所有的事情,但实际上很多库都不适用于app引擎:

  • 所有Java库都是 Java并且应该可以工作,但是由于app引擎不允许线程,甚至不是所有* java。**依赖项,它都是……让我们说有问题。
  • 另一方面,Python有更少的库,而且许多只是本机C库的包装器,它们也不起作用。 🙁

由于两个版本都对图书馆有如此糟糕的支持,我称之为领带。 对于非常简单的“只显示一些内容”-web应用程序,您当然不需要任何外部库。

我现在使用Python,因为它规则。 ;)

“更好”总是主观的。 对于GAE,选择哪种更适合您取决于您最熟悉的内容。 如果您有使用Java的经验,请使用它,如果您有使用Python的经验,请使用它。 我认为没有任何客观标准可以指出一个人比另一个人“更好”。

它不仅仅是你需要在这里考虑的语言。 图书馆,框架和工具也是相关因素。

如果你没有语言或网络开发的背景,我会怀疑Python会更容易开始。 它已经存在了很长时间,可能会有更多的支持和知识。 做一些简单的事情通常很简单,而且我认为Python框架更轻巧。

尽管如此,我宁愿使用Java。 但是,我的理由是有争议的,我不想拖钓:D。

Python是Google AppEngine最初设计的语言,它支持的时间比Java长(仅在最近才包含)。 此外,Python的创建者Guido van Rossum在AppEngine的Python端工作。 Java的创建者也不能这样说。

似乎在AppEngine上有关于Python的文档和文章比Java更多,可能是因为Python已经在AppEngine中使用了更长时间。

我的建议:使用Python。 但这并不意味着Java是一个糟糕的选择,因为它不是,我只是认为Python在这个例子中是更好的选择。

Python(主观上讲)

.py选择这里适用于所有gae项目的原因更可读,更少行代码,更高级别同时java有更多方法来解决给定问题。 估计与python相同的函数是java的代码的1/10。

我使用python,因为总是可以在发动机中获得最好的django

我使用Groovy(Grails)和GAE。 它有Java的库世界,与Python相比,你应该有大致相同的LOC。 是的,它不是100%Java(如果你想),但非常接近。 BIG的差异大致是JavaVM的速度,这也是Groovy(Grails)如此受欢迎的原因之一 – 尤其是像我这样不喜欢Python的人。)

也许可以在appengine中使用Jython,这样你就可以使用它们。 关于python生产力与Java生产力论证,我要说的一件事就是Java拥有出色的IDE来加速开发,因为Python因其动态特性而缺乏这一领域。 因此,尽管我更喜欢使用Python作为一种语言,但我认为与使用新框架时的Java相比,它可以提高生产力。 此外,我还没有得到谷歌应用引擎的python版本在Netbeans工作,这是一个皇家的痛苦。