从HTML5移动应用现状谈发展趋势
时光如梭,自2008年HTML5诞生以来已经过去了5年的时间,作为新一代的Web标准,它自问世以来就受到方方面面的强烈关注,也引起了许多争议,支持者因其开放强大的特点而鼓吹它的美好前景,质疑者因其迟迟不能很好落地而怀疑它的实际作用。现在我们从现状入手,以提问的方式针对HTML5在移动平台的发展趋势做一个剖析,使得大家能够从纷繁复杂的信息中对HTML5的未来有更清晰的了解和认识。
针对移动平台,采用HTML5开发Web App(或者Hybrid App)有哪些优势?
使用HTML5开发的页面更具有现代网页的特性:界面华丽、人机交互出色、功能强大,现在我们已经很难单纯用传统的表现方式满足用户多种多样的需求,实现时也很难将HTML5与之前的版本割裂开来,所以我们可以认为在移动平台上绝大部分的现代Web App(或者Hybrid App)都将会采用HTML5开发。那么这样做究竟有哪些好处呢?
跨平台:一次开发,到处使用,不需要考虑兼容性。这可以极大减少跨平台开发人员数量和成本。如果反过来思考,现在移动平台日新月异,除了Android和iOS两强独大,还有Windows Phone、Blackberry、Bada等多个系统参与竞争,各自覆盖一部分用户,而一个应用要想覆盖这么多的平台,除了采用Web App的方式,几乎不可能解决这个现实的问题。
云端升级:在移动开发中最痛苦的是每次发布。发布时需要涉及多个应用商店和渠道,另外还要非常的谨慎。如果出现重大bug或者质量问题,通过新版本修复是极其麻烦的事情,在这个过程中苹果App Store的审核期也让很多开发者非常头疼。而云端升级可以一次性覆盖所有用户,不需要用户手动升级和安装;有任何问题可以随时及时修复,不需要经过应用商店和用户手动更新,大大减少了风险和工作量。
与云计算平台结合,解决移动设备运算能力有限的问题:如果将Web App存放在云端的服务器上,可以很好的利用云计算平台强大的服务器和运算资源,完成很多受移动设备硬件能力限制难以完成的复杂工作。
能够更好的被搜索引擎索引和检索,并形成可量化的大数据:Native形式本身是封闭的,封闭、无序的数据对于信息流动来说是一种阻碍,很容易造成信息孤岛;Web本身的精神就是开放,同时HTML5提供的语义化标签能够更好的被识别和组织。如果我们能够通过Web App获取更多开放的信息与数据结构,才能更好的迎接和拥抱大数据时代。
人才储备巨大:传统的Web工程师都是潜在的HTML5工程师,转型相对来说更为容易。
绕过严苛的应用商店:应用商店对于应用过于严格的控制是一把双刃剑,对于许多开发者和应用开发商来说Web App的形式是绕过传统手机应用商店模式的最佳途径。
HTML5发展的现状如何?
1、HTML5标准进度
W3C规范在成为正式标准前通常需要历经5个阶段:工作草案(Working Draft)、最后修订(Last Call)、候选推荐(Candidate Recommendation)、建议推荐(Proposed Recommendation)和推荐(Recommendation)。
2012年12月17日,W3C宣布HTML5规范制定完成并发布了HTML5候选推荐规范,这代表HTML5规范已经稳定,今后只会对漏洞进行修正,企业和开发者有了稳定的实施目标,可以开展试验性实施。W3C将会开始致力于HTML5标准化的互用性测试和性能优化,并预计到2014年底发布HTML5推荐规范。
W3C计划把后继的技术升级汇总到2016年底发布的HTML 5.1中,例如改进视频字幕、响应式图片、更好的表单支持、新一代的iFrame等。这种类似于迭代开发的方式让HTML5可以更快更好的落地,而不会无限期的推迟。
总结一下,HTML5标准的进度是规范已完成,正在逐步成熟和落地。
2、移动浏览器支持情况
和桌面端IE占有率持续下跌、Chrome迅速崛起的现状不同,移动平台的主流浏览器包括Safari、Android Browser、Opera Mobile、Chrome都较好的支持HTML5,同时它们的份额还在不断扩大。主流移动浏览器的支持让HTML5的平台更加普及,同时对HTML5的良好支持也让这些浏览器获得了更多用户的选择。
移动设备上HTML5访问系统硬件的能力还在落地中,同时移动浏览器对于基本HTML5标准的支持不是大问题,但是性能和速度还有待提高。用户移动设备和移动平台硬件的快速更新会解决一部分问题,例如2011年到2013年我就曾经使用过单核528M频率的G8、单核1G的Nexus One、双核1.2G的Galaxy SII,现在则是4核1.6G的NoteII。
3、各种开源或收费的框架、工具和平台如雨后春笋般不断出现和完善
除了老牌的Sencha Touch、jQuery Mobile、PhoneGap、LungoJS外,还出现了例如像EaselJS、Construct2、GameMaker、limeJS、Impact、Crafty、Cocos2d-html5等游戏开发引擎或工具,GroundworkCSS、Skeleton、Gumby、Wirefy、Base等响应式设计框架,以及大量工具平台。需求是拉动技术进步的催化剂,大量工具的涌现证明了在HTML5开发方面有强烈需求的存在。
而大公司也纷纷推出各种HTML5工具和平台,例如百度的Web App平台西米露、Opera的游戏引擎Sphinx、Firefox的HTML5根平台Firefox OS、Intel的应用移植工具App Porter、任天堂的应用开发框架NintendoWeb Framework等等。而Adobe在放弃移动端Flash的情况下,迅速发布了一系列HTML5开发工具,其中包括HTML5动画制作工具Adobe Edge Animate和类似于Flash编辑器的可视化HTML5响应式设计工具Adobe Edge Reflow。
总体来看,HTML5工具和框架在经历了摸索的阶段后,正在逐步成熟和完善,有望进一步普及。
3、开发者继续保持很高的开发意愿
根据HTML5开发框架Kendo UI的调查显示,73%的受访者仍然对HTML5充满信心,超过94%的受访者正在或者将要使用HTML5来进行应用的开发,Appcelerator的相关调查也得出了相似的结论。同时国内的HTML5社区仍然保持很高的人气和关注度,社区活动也非常活跃。
4、应用发展情况