Google Appengine:Java或Python

时间:2010-05-10 01:01:25

标签: java python google-app-engine

  

可能重复:
  Choosing Java vs Python on Google App Engine

我们将在下一个大型网络项目中使用Google Appengine平台。但我们不确定使用哪种风格:Java或Python。

您能否请您就每种方法的缺点和优点提出建议?这是更快地构建更具可扩展性和效率的解决方案的最佳方式。

提前致谢

2 个答案:

答案 0 :(得分:11)

我对一个评论声称“非常相似”的问题给出了接受的答案 - 但那是近一年前的事了。我仍然以同样的方式偏向(仍然是Python的专家,在Java中生锈),但在这一年中,我会说Java运行时刚刚赶上了Python - 或者,如果不是那么,它已经取得了重大进展(当然,两个运行时“并行”;当然;-)。我在答案中的大多数一般考虑因素仍然大致有效。

因此,我认为今天的主要考虑因素是,团队对Python的熟悉程度,以及对Java的熟悉程度 - 如果熟悉一个而不熟悉另一个,请使用您已经知道的内容,如同“追赶”另一方所需的时间是一个可能比你可以获得的优势更大的成本(对于想要“思维扩展”经验的业余爱好者我建议反过来:借此机会学习什么你还不知道 - 但就即时生产力而言,坚持你所知道的东西会增加它; - )。

如果你确定某个“杀手库”与其中一个运行时运行良好并且你真的很想在你的应用程序中使用,那么这可能是决定因素,如果熟悉两种语言的差异在你的情况下不是决定性的。

答案 1 :(得分:5)

知道这个项目需要做什么类型的事情会有所帮助,你需要与许多其他库,应用程序等集成吗?

这只是一个轶事,但我最近在两个平台上都尝试过GAE,并发现Python选项 way 比使用Java和JDO更容易实现。其中一部分也与同时处理JDO有关,但我发现我能够在几天内在Java中实现与Python相同的功能。

作为一个相对较新的Python人,我仍然需要解决很多事情才能感觉更舒服,例如:

  • 对我的控制器和模型类进行单元测试的最佳方法
  • 构建我的控制器的最佳方法
  • 确定Django模板是否令人满意,或者我是否应该尝试使用其他模板系统

当我尝试为我的GAE课程编写Java单元测试的最佳方法时,我在六篇不同的博客文章和关于如何最好地模拟App Engine服务的建议之间反弹。有些似乎工作,有些似乎是黑客,但缺乏一个良好和支持的解决方案让我感到不舒服。

在所有条件相同的情况下,我会为绿地项目推荐Python风格。更容易上手,移动更少,生产环境中没有令人讨厌的JVM启动时间,不需要后编译字节码增强等。