2010-07-07 66 views

回答

2

Java在更多平臺上肯定可用。我會選擇一個目標平臺(或一組目標),看看哪種語言需要最少數量的冗餘實現。

此外,當您達到一定的複雜程度時,語言通常不會將速度考慮在內。對於最初的原型,確保有些語言可以快速發展,但是到了你處理完所有異常情況並由於質量保證而將整個計劃延長了三倍的時候,你會發現原型開發速度並非全部這是一筆大交易。

當然,根據您的應用程序的複雜程度,這可能被證明是不真實的 - 一個簡單的小應用程序可以在「原型時間」附近交付。

1

谷歌已經發布了Android Scripting Environment (ASE),它可以讓你用各種腳本語言編寫程序,包括Python和Ruby。不過目前還沒有辦法發佈用這些語言編寫的應用程序,不過據傳Google正在開發這個應用程序。

更一般地說,移動設備上最大的資源約束是電池電量。由於動態解釋型語言通常比靜態類型語言具有更高的CPU開銷,因此Python程序的耗電量將比Java相當。

在此之上,您需要將整個Python運行時與程序一起發送,而Java運行時已經包含在設備中。這意味着更多的內存開銷 - 移動設備上的另一個稀缺資源。

目前至少我不會使用Python或類似的腳本語言進行嚴肅的Android開發 - 它可以用於快速原型製作,但不適用於高質量的應用程序。我用一顆沉重的心臟來說這個,因爲我喜歡Python並且非常不喜歡Java。一個可能的折衷是Scala - 它是靜態類型的,但是使用類型推斷來消除Java的大量開銷,並且感覺更像Python開發。與Python一樣,它也是一種混合的面向對象和功能性語言(與Java不同,它是對象迷失方向和失去功能)。因爲它編譯爲與同等Java代碼一樣高效的Java類文件,所以有a lot of people experimenting使用Scala進行Android開發。

我不知道iPhone上的情況 - 鑑於蘋果禁止在iStore攜帶的應用程序中寫入任何其他官方認可的語言,我認爲這不太合適。

我知道有一個用於Window Mobile的Python版本,但再次AFAIK沒有辦法將python程序打包成可發佈的應用程序。

0

第一個問題是你是否真的需要開發一個應用程序,它需要每個平臺的工作,而不是一個webapp。

如果你真的需要一個應用程序,那麼你可能需要爲每個平臺單獨的語言!對於Android,你想使用Java,而對於iPhone/iPad,你會想使用Objective-C。真正嘗試去webapp路線的一個很好的論點。

相關問題