|
|
1
2
Java当然可以在更多的平台上使用。我将选择一个目标平台(或一组目标),并查看哪些语言需要最少的冗余实现。 而且,当你达到某种程度的复杂性时,语言往往不会影响速度。对于最初的原型,当然有些语言的开发速度非常快,但是当你处理了所有的异常情况,并且由于QA的原因使整个进度增加了三倍时,你会发现原型开发速度并不是那么重要。 当然,根据应用程序的复杂性,这可能被证明是不真实的——一个简单的小应用程序可以在“原型时间”附近交付。 |
|
|
2
1
谷歌已经发布了 Android Scripting Environment (ASE) 它允许您用各种脚本语言(包括python和ruby)编写Android程序。然而,目前没有办法发布用这些语言编写的应用程序,尽管有传言说谷歌正在开发它。 一般来说,移动设备最大的资源限制是电池电量。由于动态解释语言通常具有比静态类型语言更高的CPU开销,所以Python程序将是比Java等效的更大的电池消耗。 在此之上,您需要将整个Python运行时带到程序中,而Java运行时将已经包含在设备上。这意味着更多的内存开销-移动设备上的另一个稀缺资源。 至少目前,我不会使用python或类似的脚本语言来进行严格的Android开发——它可以用于快速原型设计,但不能用于生产质量高的应用程序。我的心情很沉重,因为我喜欢Python,非常讨厌Java。一个可能的妥协是Scala——它是静态类型的,但是使用类型推断来消除Java的很多开销,并且感觉更像Python来开发。与Python一样,它也是一种混合面向对象和功能语言(不像Java,它是对象迷失方向和功能不正常)。有 a lot of people experimenting 将Scala用于Android开发,因为它编译成与等价Java代码一样高效的Java类文件。 我不知道iPhone的情况是什么——考虑到苹果公司禁止iStore携带应用程序,写了任何其他官方批准的语言,我认为这不太可能适合。 我知道有一个针对WindowsMobile的Python版本,但同样,Afaik也无法将Python程序打包成可发布的应用程序。 |
|
|
3
0
第一个问题是你是否真的需要开发一个应用程序,它需要每个平台的工作,而不是一个webapp。 如果您真的需要一个应用程序,那么您可能需要为每个平台分别使用一种语言!对于Android,你想使用Java,而对于iPi/iPad,你希望使用Objto-C。这是一个很好的理由,试图真正实现WebApp路由。 |