HTML5 解密——HTML5无法获得好的性能?

本文翻译自Mozilla的HTML5布道师Chris Heilmann的英文博客,他在博客中为大家解答了关于HTML5能做什么,Web Apps 和 Native Apps的差异性等一系列开发者非常关注的问题。我们将分几篇文章为大家一一分解。

HTML5无法获得好的性能?

将一款HTML5应用的性能与一款原生应用相比,就好比是拿一件量身定做的衣服和一件从商店中买回的衣服来比较一样。量身定做的衣服固然适合自己,但是你无法将它出售或是转增给他人,因为对别人来说它未必适合。

 

这也是原生应用的处境,它们是针对某一个单一的环境和目的来进行创建和优化的,并且一直固定在这个环境中。

而另一方面,HTML5是一个Web技术,可以独立于环境,显示器和技术来运行。为了获得在互联网中的成功,它变得非常灵活。在它的定义中,互联网是属于每一个人的,而不仅仅是那一小部分可以买得起昂贵硬件和乐于被封锁在一个由一家公司掌控的封闭环境中的人们。

原生应用需要为每一款设备和新的平台来分别开发,而HTML5应用允许一款产品支持手机,平板电脑和桌面。

从另一方面,原生应用为了很多种原因而升级,迫使终端用户去购买新硬件否则他们无法获得新的应用。从灵活的角度来看,HTML5应用的执行更令人钦佩,而原生应用会让你依赖在自己的硬件上,让你在不想升级或是觉得太贵的时候无所适从。最好的例子是现在iOS开始使用自己的地图,很多终端用户都表示不满并且想要继续使用谷歌地图,但是他们确没办法得偿所愿。

HTML5现在在桌面上已经能够有非常好的表现,那么,为何我们会认为HTML5在移动端无法获得好的性能呢?答案是硬件访问。HTML5应用在为iOS和Android开发的手机硬件上,被当做二等公民来对待,不被允许访问那些可以获得峰值体验的部分。尽管使用的是相同的规则,和原生应用一样快的网页视图在iOS中被操作系统隐藏。在Android上,无论Chrome还是Firefox都可以运行的非常快,与自带的浏览器形成鲜明对比。Android上的自带浏览器提醒我们在90年代IE让互联网停滞不前的故事,这也是Mozilla和Firefox能够存在的原因。

来自:火狐社区