Python+;龙卷风vs斯卡拉+;举起
我想启动一个基于谷歌地图的网络应用程序。 我最初的想法是,在第一阶段,重点应该放在前端,后端应该易于编写和原型化,并且应该尽可能帮助前端的开发 没有“经典”页面,只有meebo.com风格的界面。javascript+jquery。(也就是说,如果在所有静态页面上都没有,那么数量很少) 我注意到了comet风格的服务器推送模式,我真的很有兴趣用它做一些概念验证 您是否对以下方面有任何建议或优缺点或经验: Python+TornadovsScala+Lift 在web应用程序的其他领域,选择可能带来哪些其他优势或劣势 注意:这是针对最多2个开发人员的,不是一个大型的分布式和不断变化的团队Python+;龙卷风vs斯卡拉+;举起,python,scala,comet,lift,tornado,Python,Scala,Comet,Lift,Tornado,我想启动一个基于谷歌地图的网络应用程序。 我最初的想法是,在第一阶段,重点应该放在前端,后端应该易于编写和原型化,并且应该尽可能帮助前端的开发 没有“经典”页面,只有meebo.com风格的界面。javascript+jquery。(也就是说,如果在所有静态页面上都没有,那么数量很少) 我注意到了comet风格的服务器推送模式,我真的很有兴趣用它做一些概念验证 您是否对以下方面有任何建议或优缺点或经验: Python+TornadovsScala+Lift 在web应用程序的其他领域,选择可能带
谢谢出于以下原因,我建议使用Python: 1。调试 我发现在编写Python代码时特别有用的是能够轻松调试(请参阅pdb模块),您只需要一个命令提示符和一个文本编辑器来设置断点。 使用Scala,您可能必须依赖IDE来完成所有调试 2。易于学习
至于编程语言,我不知道你对这两种语言都有什么经验。如果您都是Python和Scala的初学者,我个人的观点是,您将更快地学习Python。Scala是一种非常干净的语言,使您能够使用您认为合适的面向对象和函数范例 Python有更多的语法糖分,并且信奉“只有一种方法可以做到这一点”的哲学 Scala通常与Eclipse/Idea等IDE一起使用——尽管也存在对vim/emacs的支持——并且是用SBT构建的。如果您不习惯这些工具,第一次设置它们可能需要一些努力 Python通常与更轻量级的编辑器一起使用。默认情况下,重新运行更新的Python脚本更容易
Lift真正针对的是web应用程序,支持类似桌面的响应和行为。如果你只是想创建一个主页,肯定还有其他框架,它们不能让你像使用Lift那样学到很多东西。我认为Python和Tornado是一个伟大的团队,原因如下
- Tornado实际上是一个IOLoop,它碰巧附带了一个在其上运行的HTTP实现(以及一些帮助程序)李>
- 你可以学习它,并且非常、非常、非常快地了解它李>
- 它快速、稳定。负载不足
- Python非常灵活,适应性强李>
它周围还有一个很棒的社区,由非常聪明的人组成,他们也非常友好。我无法将它与scala社区进行比较,但与许多其他社区相比,Python很容易成为我的最爱,这与我为何如此热衷于它有很大关系。我精通多种语言,但如果我有问题,我最想向Python社区成员提出这个问题:)谢谢你的评论。我来自Java桌面和分布式代理领域。我对java有丰富的经验,但是我以前编写过C,C,C++和Python。Scala不会是一个问题,而且应用程序将比主页更复杂。像桌面一样的响应能力和行为是我想要的。我们都更了解python,但我对Java堆栈有更多的经验。关于调试,你说得很好,我忘了。我肯定会在PoC的评估过程中考虑这两种方法,谢谢你们,非常有说服力的评论。我感到欣慰的是,你和你的同事成功地使用了它。随着时间的推移,我可能更倾向于Python,尽管我最初想到的是Scala。我还是