Mozilla希望Web开发可以取代原生程序

Mozilla正在构建WebAPI,一组用于在浏览器中调用硬件设备功能的程序接口。而之前,通常只有原生应用才能调用硬件功能。此举意在开发一套跨平台解决方案,让开发人员只编写一次代码,就可以在所有移动平台上运行。

Mozilla发布了Boot to Gecko (B2G)项目,希望能够创建一个类似于Chrome OS的Web操作系统,此操作系统的目标平台除了上网本之外,还包括兼容Android系统的手机和平板电脑。B2G将会基于Gecko和Android 技术,目的是扩展Web体验以替代原生应用程序。Mozilla的策略到底是自己构建操作系统,还是开发相关技术然后让浏览器厂商来集成,目前尚不清楚。 在B2G的FAQ中写到:

Boot to Gecko (B2G) 目前处于初期探索阶段,目标是为开放Web平台构建独立的、完整的操作系统。它不是一个产品,但一旦成功可以作为某些产品的基础……

B2G项目不鼓励只能运行在B2G或Firefox上的应用程序,这是区别于B2G和其他移动平台的一个重要因素。我们并不希望由此获得Mozilla的竞争优势,而是希望整个Web平台获得优势……

理想情况下,这项技术将会被所有平台和设备上的移动浏览器所使用。我们期待着与其他操作系统和浏览器的开发人员一起,为制定标准和实现标准而努力。

B2G的开发将集中在四个领域:WebAPI权限模型 -保证WebAPI被网页和应用安全的访问 -,启动 -Android设备启动器,和应用程序 - 从其它平台移植或新的应用。

虽然有了HTML5,但开发人员仍需要以统一的API访问各种硬件功能 - USB、摄像头、加速仪等-来获得一致的开发体验。针对手机的第一组API将在3到6个月之内完成。

WebAPI将会包含如下部分:

  • 拨号:电话和短信API,联系人API
  • 地址簿:联系人API
  • 短信:电话和短信API,联系人API
  • 时间
  • 摄像头:摄像头API,文件系统API
  • 相册:基于FileReader(已经完成)和FileWriter的文件系统API。还有基于IndexedDB的文件抽象层。
  • 计算器
  • 设置:设备状态API,设置API
  • 游戏:加速仪API,鼠标API
  • 地图:地理信息API,联系人API

当这些API被实现以后,开发人员就可以编写出和原生应用非常相似的Web应用,而且不需要为每个移动平台写不同的代码。此项目若想取得成功,需要各大移动平台厂商的支持。Mozilla的Robert Nyman在官方博客中“将会发布WebAPI规范的草稿和实现原型,并提交给W3C来标准化。”W3C自己也在开发其中的一些API,比如地理信息API,因此不清楚Mozilla会提出全新的API还是保持已有的、只为跨平台开发所需要的API。

然后就等着苹果、谷歌和微软拥抱和支持这些API了。据ArsTechnica称, 苹果对iOS开发平台的最初想法就是基于HTML,而谷歌以推动Web标准化著称,微软也在为Windows 8打造基于HTML 5的用户界面,其中还包含了在浏览器中访问PC机硬件的API,因此这些公司应该会支持这个想法。最后,就看W3C是基于Mozilla的WebAPI还 是其他大厂商的提案来构建标准了。

查看英文原文:Mozilla Favors Web Over Native Application Development

译者 王瑜珩 InfoQ中文站编辑,ThoughtWorks咨询师,关注企业级Web开发、敏捷实践以及项目管理。

This entry was posted in Achitecture. Bookmark the permalink.

发表评论

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 更改 )

Twitter picture

You are commenting using your Twitter account. Log Out / 更改 )

Facebook photo

You are commenting using your Facebook account. Log Out / 更改 )

Google+ photo

You are commenting using your Google+ account. Log Out / 更改 )

Connecting to %s