開(kāi)源Enyo是惠普長(zhǎng)期戰(zhàn)略的一部分
在惠普前不久公布的WebOS操作系統(tǒng)的開(kāi)源計(jì)劃中,WebOS的開(kāi)發(fā)框架Enyo 2.0是一個(gè)重要組成部分。
簡(jiǎn)單地說(shuō),Enyo框架基于Javascript,新增加了跨平臺(tái)能力,也就是“編寫(xiě)一次,到處運(yùn)行”。目前開(kāi)發(fā)的應(yīng)用可用于Android,iOS和桌面版的瀏覽器,如IE,F(xiàn)irefox,Chrome或Safari上運(yùn)行。
仔細(xì)分析起來(lái),Enyo的著眼點(diǎn)并不在于WebOS。WebOS從設(shè)計(jì)開(kāi)始就強(qiáng)調(diào)“Web”,Enyo 1.0已經(jīng)能夠很好地處理WebOS上應(yīng)用程序的開(kāi)發(fā),而Enyo 2.0強(qiáng)調(diào)的是跨平臺(tái)能力。
HP說(shuō)開(kāi)發(fā)者可以更容易地把為TouchPad開(kāi)發(fā)的應(yīng)用移植到Android或者iOS上,實(shí)際上有點(diǎn)勉強(qiáng)——大部分的開(kāi)發(fā)者開(kāi)發(fā)應(yīng)用的首選平臺(tái)是iOS或者Android,很少見(jiàn)到有先開(kāi)發(fā)WebOS上的應(yīng)用,然后再向iOS和Android移植的,特別是現(xiàn)在WebOS軟件連一個(gè)成氣候的市場(chǎng)都沒(méi)有,基本不要指望有很多開(kāi)發(fā)者。
如果說(shuō)采用Enyo 2.0能夠讓在iOS和Android上開(kāi)發(fā)的應(yīng)用容易向WebOS移植,或許還有點(diǎn)可能。但問(wèn)題是有多少開(kāi)發(fā)者愿意采用Enyo這個(gè)框架,有多少應(yīng)用適宜用Enyo框架開(kāi)發(fā)。
手機(jī)的操作系統(tǒng)眾多,跨平臺(tái)的應(yīng)用程序開(kāi)發(fā)是個(gè)熱點(diǎn),有不少選擇了JavaScript+HTML+CSS這一技術(shù)路線,比較著名的如PhoneGap。WebOS的兩種應(yīng)用開(kāi)發(fā)方案,一個(gè)是基于C/C++的,另一種就是采用PhoneGap的,起初的版本里這兩種方法在應(yīng)用開(kāi)發(fā)時(shí)還不能混用,后來(lái)支持了。PhoneGap支持的平臺(tái)很多,除WebOS、iOS和Android,還有Windows Mobile、Symbian、BlackBerry等,這可比Enyo要強(qiáng)多了。Enyo需要一個(gè)“本地”的殼,而且惠普推薦PhoneGap,那開(kāi)發(fā)者何不就用PhoneGap,需要的JavaScript框架除了Enyo之外,還有不少可以選擇的,比如Sencha Touch?;蛟SEnyo有其特點(diǎn)和優(yōu)勢(shì),這點(diǎn)需要時(shí)間來(lái)驗(yàn)證。
還有一個(gè)問(wèn)題是多少應(yīng)用適合用Enyo框架開(kāi)發(fā)。JavaScript這類方案跨平臺(tái)性能好,代價(jià)也不小。首先是性能,當(dāng)然在很多應(yīng)用上性能不是大問(wèn)題,比如電子書(shū)閱讀、在線信息查詢等;然后是JavaScript并不適合寫(xiě)復(fù)雜的大程序,程序可讀性可維護(hù)性比較差;再有,目前iOS等自身都有很好的SDK,而基于跨平臺(tái)路線的方案在這方面做得都不太好。
從Enyo 2.0還能支持桌面瀏覽器上看,惠普的思路更像是為未來(lái)布局,作為云計(jì)算的終端解決方案。在這種情況下,復(fù)雜性和性能壓力基本在云端,終端側(cè)則相當(dāng)簡(jiǎn)單,采用跨平臺(tái)技術(shù)開(kāi)發(fā)一些應(yīng)用,強(qiáng)調(diào)快速、低成本,還有一些競(jìng)爭(zhēng)力。在許多方案中Enyo能否爭(zhēng)得一席之地現(xiàn)在也不好說(shuō),但至少惠普努力了。