自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Swift難以主導Android平臺的四個理由

譯文
移動開發(fā) Android
讓Swift成為Android平臺上的主流開發(fā)選項無疑困難重重。在今天的文章中,我們將一同探討谷歌為何仍然需要倚重Java。

【51CTO.com快譯】谷歌是否會將蘋果的Swift語言視為Android平臺上的“一等公民”? 讓Swift成為Android平臺上的主流開發(fā)選項無疑困難重重。在今天的文章中,我們將一同探討谷歌為何仍然需要倚重Java。

要找到答案,我們不妨考慮另一個更為具體的問題:谷歌需要投入多大力量才能讓Swift成為Android開發(fā)者與用戶的***?另外,谷歌為什么要費力選擇這樣一條坎坷而漫長的道路?

難題:Android部分

從Android轉(zhuǎn)移至Swift就如同我們舉家移民一樣困難。首先,谷歌需要為Android開發(fā)Swift運行時,并保證其功能與現(xiàn)有Java運行時一一對應。谷歌在這方面已經(jīng)做出了一些嘗試——包括將Dalvik VM替換為速度更快的ART運行時,但二者仍以Java為基礎。

更困難的是,Swift幾乎無法成為Android平臺上的***語言。投入Swift懷抱的工作必須逐步完成——即首先同時使用Swift與Java VM,而后慢慢只保留Swift選項。這種過渡需要耗時數(shù)年,特別是在Android這樣廣泛普及的生態(tài)系統(tǒng)當中。

蘋果也面臨著類似的難題,因為其在過去兩年中同樣需要在生態(tài)系統(tǒng)中同時維護Swift與objective-c。在這一系統(tǒng)當中,蘋果擁有著絕對的主導權(quán)。但Android相對來說麻煩更多,因為其擁有大量運營商、手機制造商再加上谷歌自身這三股重要力量需要平衡。

最終,這一舉措還需要Android開發(fā)者的積極加入——而大多數(shù)人對Swift并不太感興趣。

難題:開發(fā)者部分

除了谷歌制定決策外,開發(fā)者也需要加入進來才能保證Swift順利過渡至Android。

當初Android之所以選擇了Java,是因為其擁有豐富的開發(fā)資源以及從業(yè)者基礎。但更年輕且測試工作還不夠完善的Swift則缺少同樣的發(fā)展動力。

不過Swift確實勢頭強勁,各開發(fā)商的認同已經(jīng)讓其在今年4月的Tiobe編程語言排行中位列前二十(目前為第十五名)。

當然,開發(fā)者也需要耗費相當長的時間來了解并徹底掌握新的語言——這意味著Swift將與Java繼續(xù)共存下去。

由甲骨文轉(zhuǎn)向蘋果

就目前來講,Android計劃使用OpenJDK而非甲骨文的Java,這主要是由于后者總是在拿后者的知識產(chǎn)權(quán)騷擾谷歌的開發(fā)工作。但毫無疑問,甲骨文在未來仍將繼續(xù)主導Java的發(fā)展方向。

同樣的,Swift則是蘋果的寵兒。即使已經(jīng)被轉(zhuǎn)為開源,這也只是Swift為了長久發(fā)展并在跨平臺應用中得到肯定的途徑。如果其能夠降低平臺與運行時對專有技術(shù)的高度依賴性,相信谷歌也將不斷且積極地推動Swift轉(zhuǎn)型。

但需要再次強調(diào),Swift的前進方向由蘋果所掌握。谷歌當然不可能希望自己被關(guān)鍵性競爭對手所控制——即使相關(guān)技術(shù)方案屬于開源項目。從理論角度講,谷歌確實可以為Swift打造fork并借此取得主動,但對完整語言的維護與管理工作將帶來高昂的成本。

按谷歌的思路,轉(zhuǎn)向Go也許更為靠譜

如果谷歌方面真的希望擺脫第三方語言與運行時的束縛,那么由Java轉(zhuǎn)向Swift可能并非***的選擇。內(nèi)部建立語言、運行時及工作鏈才是理想途徑:Go,或者說Golang,正是谷歌的救世主。

Go目前已經(jīng)被應用于移動開發(fā)領域。其1.5及更高版本能夠同時支持Android與iOS,且具備“app”軟件包,意味著開發(fā)者能夠為這兩套平臺編寫全Go應用。當然需要指出,移動設備對Go的支持能力尚處于實驗性階段。

如果谷歌公司將Go或者Swift作為Java之外的Android平臺補充方案,那么還有大量工作需要逐步完成。就目前來看,Android生態(tài)系統(tǒng)在相當長的周期內(nèi)仍將以Java為核心。

原文鏈接: Swift難以主導Android平臺的四個理由

【51CTO.com獨家譯稿,合作站點轉(zhuǎn)載請注明來源】

 

責任編輯:李英杰 來源: 51CTO
相關(guān)推薦

2016-04-26 10:19:39

周刊

2020-06-04 08:15:53

Kubernetes容器PaaS

2010-10-15 10:52:04

跳槽

2019-07-18 11:58:27

安全分析師SOC網(wǎng)絡安全

2022-10-28 12:10:03

云計算企業(yè)

2009-05-22 10:28:07

2023-11-03 00:28:44

ApacheFlink

2021-07-20 22:56:03

手機軟件iPhone

2009-03-11 08:38:18

RIM黑莓移動操作系統(tǒng)

2009-07-08 16:25:15

Scala的特點類型推斷

2010-08-10 09:34:14

FlexBlazeDS

2023-05-17 09:07:58

IT項目標準化

2016-12-09 09:31:22

HadoopSQL大數(shù)據(jù)

2016-08-18 00:44:38

Python編程語言

2017-07-31 08:47:58

2022-02-23 15:09:18

數(shù)字化轉(zhuǎn)型國有企業(yè)數(shù)據(jù)

2024-06-25 12:45:05

2013-03-18 13:31:28

2017-08-10 09:00:18

2023-09-13 11:05:22

物聯(lián)網(wǎng)平臺物聯(lián)網(wǎng)
點贊
收藏

51CTO技術(shù)棧公眾號