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

跨平臺(tái)工具如何終結(jié)操作系統(tǒng)戰(zhàn)爭(zhēng)

移動(dòng)開(kāi)發(fā)
北京時(shí)間12月19日消息,據(jù)國(guó)外媒體報(bào)道,業(yè)內(nèi)分析師喬納斯·林德(Jonas Lind)近日撰文稱(chēng),比起HTML5,跨平臺(tái)更能對(duì)目前平臺(tái)的碎片化,以及蘋(píng)果和谷歌的雙寡頭壟斷發(fā)起挑戰(zhàn)。林德在文章中還概括了目前存在的跨平臺(tái)工具,并指出這些工具將會(huì)變得和原生平臺(tái)一樣重要。
全文概要如下

Android、iOS和Windows Phone平臺(tái)的對(duì)決一直是過(guò)去一年行業(yè)內(nèi)的話題。但是手機(jī)平臺(tái)之間市場(chǎng)份額的爭(zhēng)奪并不想業(yè)內(nèi)許多人認(rèn)為的那樣具有決定性。

業(yè)內(nèi)一種流行的觀點(diǎn)認(rèn)為:整個(gè)市場(chǎng)將不可避免地走向蘋(píng)果與谷歌雙寡頭壟斷。蘋(píng)果應(yīng)用程序商店已經(jīng)擁有超過(guò)40萬(wàn)個(gè)應(yīng)用。Android方面則增長(zhǎng)迅速,現(xiàn)在已經(jīng)有超過(guò)25萬(wàn)個(gè)應(yīng)用做基礎(chǔ),預(yù)計(jì)今年年底就能追上蘋(píng)果。根據(jù)應(yīng)用商店分析公司Distimo的數(shù)據(jù),所有應(yīng)用商店中近80%的應(yīng)用被這兩個(gè)市場(chǎng)巨頭控制。市場(chǎng)研究機(jī)構(gòu)高德納(Gartner)2011年第1季度的數(shù)字顯示,iOS和Android共同的市場(chǎng)占有率為53%,并且這個(gè)數(shù)字還在上升。

但雙寡頭可能受到移動(dòng)網(wǎng)絡(luò)和跨平臺(tái)工具的挑戰(zhàn)。HTML5賦予所有其他平臺(tái)通過(guò)瀏覽器提供應(yīng)用的能力。VisionMobile最近的開(kāi)發(fā)者經(jīng)濟(jì)報(bào)告顯示,在獲得開(kāi)發(fā)者關(guān)注度方面,移動(dòng)互聯(lián)網(wǎng)(HTML5是其中一個(gè)子集)排在Android和iOS平臺(tái)之后,已經(jīng)是第三大流行的開(kāi)發(fā)平臺(tái)。

與此同時(shí),HTML5被炒作過(guò)度,那種認(rèn)為HTML5將取代所有原生應(yīng)用的想法需要經(jīng)過(guò)現(xiàn)實(shí)的檢驗(yàn)。與基于HTML5的應(yīng)用相比,原生應(yīng)用將會(huì)繼續(xù)提供更為豐富的功能、更好的性能和更高的安全性。quirksmode.org的研究表明,每一個(gè)移動(dòng)WebKit的實(shí)現(xiàn)略有不同,這可能導(dǎo)致基于HTML5的應(yīng)用出現(xiàn)問(wèn)題。在最近的白皮書(shū)中,移動(dòng)網(wǎng)站和應(yīng)用程序發(fā)布平臺(tái)Netbiscuits測(cè)試了智能手機(jī)對(duì)HTML5中18個(gè)功能的支持,結(jié)果發(fā)現(xiàn)主流智能手機(jī)也只能對(duì)其中的一些重要功能提供部分支持,或者根本不支持,實(shí)現(xiàn)也是支離破碎。iPhone上可以運(yùn)行的應(yīng)用黑莓和三星手機(jī)可能就無(wú)法運(yùn)行,反之亦然?;蛞眯畔⒓夹g(shù)分析公司Forrester在HTML5與原生辯論中的言論:應(yīng)用和互聯(lián)網(wǎng)之爭(zhēng)仍將繼續(xù)……兩者是無(wú)關(guān)的。問(wèn)題不在于是否要在應(yīng)用和移動(dòng)網(wǎng)絡(luò)中選擇一個(gè),兩者將并存。

跨平臺(tái)開(kāi)發(fā)工具概覽

新類(lèi)型跨平臺(tái)工具比純HTML5更有趣,因?yàn)楸绕鸹贖TML5的瀏覽器,它們能夠提供更好的性能和功能。這些工具開(kāi)發(fā)出的應(yīng)用大致被分為兩類(lèi):

1)網(wǎng)絡(luò)應(yīng)用/混合應(yīng)用。這些應(yīng)用程序利用網(wǎng)絡(luò)引擎(“網(wǎng)絡(luò)瀏覽器”),通常用HTML / CSS / JavaScript編寫(xiě)。

2)原生應(yīng)用。這些應(yīng)用被編譯成機(jī)器代碼,并經(jīng)常以C++或相似的語(yǔ)言編寫(xiě)。

過(guò)去幾年來(lái),跨平臺(tái)工具作為一個(gè)新興的市場(chǎng),出現(xiàn)了大批活躍的初創(chuàng)公司。下圖說(shuō)明在跨平臺(tái)工具市場(chǎng),復(fù)雜性和性能之間的不同取舍。

 

傳統(tǒng)網(wǎng)站:左下角為傳統(tǒng)網(wǎng)站,性能有限,但在沒(méi)有增加復(fù)雜性的情況下可以訪問(wèn)所有平臺(tái)。一旦所有瀏覽器都支持純HTML5 ,那它也會(huì)被歸到這個(gè)區(qū)域。

網(wǎng)絡(luò)應(yīng)用/混合應(yīng)用:圖表中與傳統(tǒng)網(wǎng)站相鄰的是HTML5網(wǎng)絡(luò)應(yīng)用,可以下載至瀏覽器離線運(yùn)行。它們可以提供更好的性能,但也稍微有些復(fù)雜。其中往上一點(diǎn)是運(yùn)行模擬原生的跨平臺(tái)工具細(xì)分市場(chǎng)。這些工具提供更好的性能,但如果該工具支持多種平臺(tái)復(fù)雜性也會(huì)更高。在這里我們發(fā)現(xiàn)用HTML5/CCS3和JavaScript編寫(xiě)的網(wǎng)絡(luò)應(yīng)用,附帶額外的原生元素,一般內(nèi)置在原生包裝中。這些跨平臺(tái)工具往往會(huì)添加原生擴(kuò)展,以便能訪問(wèn)一些低級(jí)別的原生功能。PhoneGap就是這個(gè)細(xì)分市場(chǎng)中的例子,它通常就被用作與Sencha Touch框架串聯(lián)。其他運(yùn)行在PhoneGap頂端的工具還有WorkLight和appMobi。

與細(xì)分市場(chǎng)密切相關(guān)的是混合工具,它們將HTML5/JavaScript轉(zhuǎn)換成真實(shí)的原生源代碼。混合工具的例子就有Appcelerator的Titanium。

其他類(lèi)型的解決方案分為網(wǎng)絡(luò)主標(biāo)題/基于Java、Lua、ActionScript或其他不常用語(yǔ)言的混合應(yīng)用。圖表顯示了雖然非常復(fù)雜,但碎片化嚴(yán)重的Java ME的性能依然低下??缙脚_(tái)工具Corona SDK和DragonRAD基于Lua。Rhodes基于HTML /Ruby,而OpenPlug使用ActionScript(Flash)作為源代碼。Kony使用拖放來(lái)開(kāi)發(fā)企業(yè)網(wǎng)絡(luò)應(yīng)用。關(guān)于性能/復(fù)雜的取舍,這些解決方案中的大多數(shù)都沒(méi)有可靠的信息,因此上圖中的所示并不能代表它們確切的位置。一般情況下,這些工具產(chǎn)生的代碼編譯或重新編譯成原生ARM機(jī)器碼就會(huì)獲得較高的性能。

原生應(yīng)用:第二個(gè)主要類(lèi)別是原生應(yīng)用。在原生應(yīng)用跨平臺(tái)工具中,開(kāi)發(fā)人員經(jīng)常在C / C + +或C#的同一個(gè)代碼庫(kù)中一起工作,然后在半自動(dòng)移植到目標(biāo)平臺(tái)和設(shè)備上。原生代碼的性能有顯著提高,但復(fù)雜性也一樣。在方面的例子有Airplay、QT和MoSync。Airplay SDK(現(xiàn)在名為Marmalade)起源于3D游戲,但也可以用作一般的C++跨平臺(tái)工具。Qt是一個(gè)跨平臺(tái)的UI框架,也可用于本機(jī)C + +移植。Qt主要支持諾基亞的傳統(tǒng)平臺(tái)。MoSync是一個(gè)一般用于C++開(kāi)發(fā)的跨平臺(tái)工具,集成Eclipse IDE,并在開(kāi)源(GPL)許可之下。

超越Java的跨平臺(tái):原生擴(kuò)展

跨平臺(tái)開(kāi)發(fā)的傳統(tǒng)方法滿足最低要求,Java、Flash Lite和移動(dòng)HTML都采取這種方法 。這種方法犧牲性能,漂亮界面和訪問(wèn)特定設(shè)備的功能。

一種解決辦法是添加原生擴(kuò)展。它們可以為IDE提供額外的IDE SDK/NDK庫(kù),并還可以獲得訪問(wèn)低級(jí)別硬件功能的權(quán)限。低級(jí)別的硬件功能可以由設(shè)備數(shù)據(jù)庫(kù)管理。設(shè)備數(shù)據(jù)庫(kù)控制的條件代碼可以在給定的設(shè)備上執(zhí)行。

一些跨平臺(tái)廠商已經(jīng)建立了細(xì)節(jié)層次不同的設(shè)備數(shù)據(jù)庫(kù)。一個(gè)設(shè)備數(shù)據(jù)庫(kù)包含屏幕尺寸、輸入方式和準(zhǔn)確的OS版本等信息,此外還有詳細(xì)的硬件配置和已知錯(cuò)誤解決方法。

使用原生擴(kuò)展,可以克服困擾Java的固有的局限性。不用“編寫(xiě)一次,到處運(yùn)行”,開(kāi)發(fā)者可以花90%的時(shí)間制定一個(gè)共同的代碼庫(kù),再花10%的時(shí)間為每個(gè)平臺(tái)和設(shè)備加入原生設(shè)計(jì)模塊和擴(kuò)展。對(duì)于軟件純化論者來(lái)說(shuō),90/10的解決辦法可能似乎不是很優(yōu)雅,但它能夠在搭載超過(guò)5種操作系統(tǒng)平臺(tái)的成千上萬(wàn)臺(tái)設(shè)備上應(yīng)對(duì)難以置信的復(fù)雜性。利用這種方式,應(yīng)用開(kāi)發(fā)者可以管理一個(gè)代碼庫(kù),并可以在不丟失功能的情況下將其移植到目標(biāo)設(shè)備。原則上,相比較直接為目標(biāo)設(shè)備開(kāi)發(fā),使用(C++)附帶擴(kuò)展的跨平臺(tái)引擎應(yīng)該能夠在損失最小性能的前提下,提供類(lèi)似的功能。將共同代碼庫(kù)調(diào)整后用于100臺(tái)設(shè)備,經(jīng)濟(jì)規(guī)模顯著。

跨平臺(tái)的顛覆潛力

有跡象表明,平臺(tái)碎片化將會(huì)消失。這不只是Android、iOS和Windows Phone 7,它們有財(cái)大氣粗的企業(yè)巨頭支持。市面上還有像QNX(RIM)、WebOS(惠普)、MeeGo(英特爾、中國(guó)移動(dòng))和Bada(三星)等較小公司的平臺(tái)。此外還有一些過(guò)去遺留下來(lái)的平臺(tái),至少還將在市面上存在幾年時(shí)間,包括Windows Mobile、黑莓OS、Symbian、BREW、Java ME和Flash。如果再把主流的桌面平臺(tái)(Windows、Mac OS、Ubuntu)、游戲機(jī)、機(jī)頂盒、汽車(chē),和其他電器包括進(jìn)來(lái),平臺(tái)數(shù)量將難以管理。

應(yīng)用開(kāi)發(fā)者的客戶希望觸及整個(gè)市場(chǎng),因此開(kāi)發(fā)者必須面對(duì)支持所有平臺(tái)和設(shè)備的艱巨任務(wù)。如果他們可以使用一個(gè)跨平臺(tái)引擎,相比較為每種設(shè)備設(shè)置一個(gè)內(nèi)部開(kāi)發(fā)團(tuán)隊(duì),生產(chǎn)率將獲得巨大提高。

跨平臺(tái)的早期采用者將最有可能成為龐大的消費(fèi)企業(yè),它們需要針對(duì)大眾市場(chǎng),如媒體公司、游戲公司、娛樂(lè)公司、銀行和任何開(kāi)發(fā)B2C應(yīng)用的任何品牌。同樣,政府機(jī)構(gòu)往往需要提供無(wú)差別待遇訪問(wèn)他們服務(wù)和跨平臺(tái)的工具,使他們能夠做到這一點(diǎn)。另一批跨平臺(tái)工具的早期用戶是大型企業(yè)的首席信息官。他們面臨越來(lái)越多高管們的要求,他們希望使用自己喜歡的智能手機(jī)安全地訪問(wèn)公司的內(nèi)部數(shù)據(jù)。一旦這些早期使用者壓低價(jià)格,并解決好穩(wěn)定性問(wèn)題,我們應(yīng)該會(huì)看到跨平臺(tái)工具在主流應(yīng)用開(kāi)發(fā)市場(chǎng)獲得快速發(fā)展。

假設(shè)更多開(kāi)發(fā)者遷移至跨平臺(tái)工具,移動(dòng)領(lǐng)域的權(quán)力分配將受到挑戰(zhàn)。目前占據(jù)市場(chǎng)的平臺(tái)和即將上市平臺(tái)應(yīng)用數(shù)量的差距將會(huì)縮短。這將允許較小平臺(tái)在公平的競(jìng)爭(zhēng)環(huán)境中競(jìng)爭(zhēng)。

網(wǎng)絡(luò)應(yīng)用和HTML5應(yīng)該會(huì)極大地挫傷傳統(tǒng)平臺(tái)的市場(chǎng)力量。當(dāng)C + +跨平臺(tái)引擎可以提供的性能和功能,和直接在目標(biāo)平臺(tái)上編碼相差無(wú)幾,那它就將成為棺木上的最后一顆釘子。如果跨平臺(tái)引擎可以完全整合原生平臺(tái)和設(shè)備擴(kuò)展,那這就將是可能的。在這種情況下,原生應(yīng)用開(kāi)發(fā)者可能會(huì)重新考慮Android,iOS和WP7,選擇在一個(gè)跨平臺(tái)IDE上進(jìn)行編碼,而不是具體哪個(gè)平臺(tái)。這樣的話,跨平臺(tái)IDE將變得和原生平臺(tái)平等,甚至變得十分重要。至少,今天的操作系統(tǒng)平臺(tái)之爭(zhēng)將轉(zhuǎn)移到一個(gè)完全不同的水平。

責(zé)任編輯:佚名 來(lái)源: 搜狐IT
相關(guān)推薦

2010-06-21 15:35:28

MeeGo

2011-12-13 20:07:26

跨平臺(tái)工具

2013-05-31 13:50:26

Windows Ser

2009-02-18 10:36:41

微軟未來(lái)操作系統(tǒng)發(fā)展趨勢(shì)

2009-07-29 09:15:49

2018-06-08 11:17:11

2010-04-29 14:08:38

Unix操作系統(tǒng)

2010-04-08 16:18:22

Unix操作系統(tǒng)工具

2010-04-22 16:32:50

Aix操作系統(tǒng)SMIT

2010-04-08 16:40:35

2009-12-10 15:53:15

Linux操作系統(tǒng)平臺(tái)

2010-03-05 10:31:33

Android OS

2014-09-03 16:52:30

微軟Windows

2010-03-05 16:47:11

Android操作系統(tǒng)

2010-04-23 13:55:24

定制Aix操作系統(tǒng)

2009-12-09 17:25:19

Linux操作系統(tǒng)

2010-01-12 17:46:14

2012-07-06 15:00:03

跨平臺(tái)工具MoSync

2009-06-30 10:33:22

2012-07-06 15:08:14

跨平臺(tái)工具Netbiscuits
點(diǎn)贊
收藏

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