Scala:未受重視卻潛力巨大的Android編程語言
譯文【8月31日 51CTO外電頭條】Scala,這款運行于Java虛擬機之上的靜態類型語言,正逐漸成為谷歌Android應用程序開發領域的新選擇。

盡管開發人員對Java及C++語言在Android上的使用已經非常熟悉,但他們仍然可以選擇采用其它JVM語言,因為Android一直在大力推動Java兼容虛擬機Dalvik,開發人員Mike Burns推斷道。他工作于一家名為Thoughtbot的網頁及移動應用程序開發公司。“Scala如今也具備了正在蓬勃發展的[開發人員]社區,”他如是說。
舉例來說,來自波士頓Android開發組的成員們已經開始利用Scala進行Android開發,Burns說道,他正是該工作組的負責人:“Scala能夠讓大家更快地完成編碼及分享的工作,尤其是與采用Java進行開發的過程相比。”Burns即將出席今年10月于舊金山舉行的Android開放式會議,會上將討論關于Scala替代Java的各項細節。
Scala的創造者Martin Odersky進一步證實了Burns的主張:“我對他的說法深表贊同:Scala是一款獨具魅力的Android開發語言。另外值得一提的是,Android插件中還具備對SBT,即Scala標準創建工具的支持。”谷歌目前拒絕對Scala在Android開發領域的相關話題發表評論。但谷歌的項目托管站點上已經設有Scala – Android頁面,展示通過Scala為Android創建應用程序過程中所需的各類工具。
對于移動設備上的應用程序,Scala則比JRuby及Groovy等其它JVM語言更具優勢,因為靜態類型語言運行速度更快、內存占用更少、優化程度也往往好于平均水平,Burns說道。他還強調說Android系統往往運行于處理器速度緩慢且內存較小的嵌入式設備上,如此一來降低配置要求就顯得尤為重要。
在今年春季的一篇博文中,Burns如此宣揚Scala的編程特點:“Scala可以被看作Java的改進版。首先,大家不再需要輸入大量分號。Scala帶給我們的是現代抽象科學的創造之力。添加屬性、固有內容、值的類型檢測以及信息塊——所需的每種要素如今都以實實在在的編碼成品方式擺在我們面前。”
來自Forrester公司的分析師Jeffrey Hammond表示,Dalvik虛擬機使用其自身的字節碼格式來執行應用程序。谷歌將Java作為媒介語言以對.dex格式的文件進行編輯,他說:“Mike似乎在尋找一種方式,旨在將Scala作為編寫應用程序以及生成.dex編碼類型文件的一種后備方案。”
Burns說他已經切實用Scala為Android編寫了一些程序,其中包括一款以Umbrella Today為基礎的天氣預報軟件。他向我們列舉了用Scala為Android系統進行開發工作的優勢,例如速度快、編程容易以及具備充滿活力的相關社區等等。不過,缺點也確實是客觀存在的,其中包括以實踐經驗相對匱乏及缺少文檔資料為主的各類未知情況。
當然,Android同時也是甲骨文與谷歌之間鬧得沸沸揚揚的訴訟事件的核心角色,起因是Android被指揮存在與Java專利相關的侵權行為。但Burns卻對訴訟沒有太多意見。“我對這事真的不太感興趣,”他說。
了解更多請點擊51CTO獨家專題:Android開發應用詳解 Scala編程語言
【51CTO譯稿,非經授權謝絕轉載,合作媒體轉載請注明原文出處、作者及51CTO譯者!】



















