在惠普前不久公布的WebOS操作系统的开源计划中,WebOS的开发框架Enyo 2.0是一个重要组成部分。
简单地说,Enyo框架基于Javascript,新增加了跨平台能力,也就是“编写一次,到处运行”。目前开发的应用可用于Android,iOS和桌面版的浏览器,如IE,Firefox,Chrome或Safari上运行。
仔细分析起来,Enyo的着眼点并不在于WebOS。WebOS从设计开始就强调“Web”,Enyo 1.0已经能够很好地处理WebOS上应用程序的开发,而Enyo 2.0强调的是跨平台能力。
HP说开发者可以更容易地把为TouchPad开发的应用移植到Android或者iOS上,实际上有点勉强——大部分的开发者开发应用的首选平台是iOS或者Android,很少见到有先开发WebOS上的应用,然后再向iOS和Android移植的,特别是现在WebOS软件连一个成气候的市场都没有,基本不要指望有很多开发者。
如果说采用Enyo 2.0能够让在iOS和Android上开发的应用容易向WebOS移植,或许还有点可能。但问题是有多少开发者愿意采用Enyo这个框架,有多少应用适宜用Enyo框架开发。
手机的操作系统众多,跨平台的应用程序开发是个热点,有不少选择了JavaScript+HTML+CSS这一技术路线,比较著名的如PhoneGap。WebOS的两种应用开发方案,一个是基于C/C++的,另一种就是采用PhoneGap的,起初的版本里这两种方法在应用开发时还不能混用,后来支持了。PhoneGap支持的平台很多,除WebOS、iOS和Android,还有Windows Mobile、Symbian、BlackBerry等,这可比Enyo要强多了。Enyo需要一个“本地”的壳,而且惠普推荐PhoneGap,那开发者何不就用PhoneGap,需要的JavaScript框架除了Enyo之外,还有不少可以选择的,比如Sencha Touch。或许Enyo有其特点和优势,这点需要时间来验证。
还有一个问题是多少应用适合用Enyo框架开发。JavaScript这类方案跨平台性能好,代价也不小。首先是性能,当然在很多应用上性能不是大问题,比如电子书阅读、在线信息查询等;然后是JavaScript并不适合写复杂的大程序,程序可读性可维护性比较差;再有,目前iOS等自身都有很好的SDK,而基于跨平台路线的方案在这方面做得都不太好。
从Enyo 2.0还能支持桌面浏览器上看,惠普的思路更像是为未来布局,作为云计算的终端解决方案。在这种情况下,复杂性和性能压力基本在云端,终端侧则相当简单,采用跨平台技术开发一些应用,强调快速、低成本,还有一些竞争力。在许多方案中Enyo能否争得一席之地现在也不好说,但至少惠普努力了。