HTML5与Web App
UC技术总裁梁捷
最近一两年, HTML5 和 Web App 的概念相当火热,吸引了很多人或多或少的关注。从狭义上讲, HTML5 是超文本标记语言( HTML )协议的一个升级版本。这个升级版本包含了一些新的元素,包括 Web Workers 、 Web Storage 、 Web Sockets API 、 Server-Sent Events 等。现在这个协议是由一个标准化组织——万维网联盟( W3C )来制定与普及的。从广义上讲, HTML5 是 Web App 相关技术的总称,包括 HTML5 、 DOM API 、 CSS3 、面向  Web App 的页面设计模式(如 SPA )等(注: http://platform.html5.org/ )。所有这些工作都是围绕着对浏览器的扩展。因此,从广义上来讲,大家把 HTML5 的含义进一步地泛化,现在涵盖到了 Web App 的范畴上来。 但说实话,当前 HTML5 太热了。人们在谈起它时,更多是在阐述一种概念,这有点像当年的  Web 2.0 。 Web App的核心优势 从现在来看,应用一般有三种:原生应用、混合应用和 Web 应用,如图 1 所示。 [caption id="attachment_12345" align="aligncenter" width="428" caption="图1 应用的三种类型"]
[/caption] 相对于其他两种应用,
Web App 的核心优势有两点:一是开发模式的再次进化(对复杂性的封装),二是具有卓越的互联互通特性。 从开发模式来说, Web App 的出现像是历史的再次重演。之前是从汇编到 C 语言,因为 C 语言相对高级一些,所以开发者真正需要做的事情就简单了很多。现在我们进一步从 Java 到 HTML ,也是把一些复杂的东西封装起来了。我们做应用不需要写边框、画界线,只需要用一个模板就能够起到界面显示的作用。 Web App 的另一个很大的优势是有非常卓越的互联互通特性。最近两三年,网页游戏在游戏界非常流行,它就是依赖了 Web 形态应用的互联互通特性。很多流量能够很方便地导入这样的一个网页中,同时它也能够在页面内给其他应用导流量。这样卓越的互联互通性对产品的推广和营销都有很大的帮助。因此,在过去两三年里网页游戏得到了非常快速的成长。 现在很多开发者都感觉到,原来必须要用客户端技术去做的效果或者功能现在基本都可以通过 Web App 的相关技术实现了,通过这些简单的语言和配合,就能做到很酷炫的效果。例如 UC 应用中心里收录的豆瓣电台、 3D 游等一系列优质 Web App 。 标准的普及 一般来讲, W3C 制定 HTML5 标准的过程是这样的:在经过大约五个步骤之后才能将标准正式对外发布( Recommendation ),如图 2 所示。而 2011 年, HTML5 标准刚刚走到了第二个流程,依旧处于工作草案状态。所以有人预言 HTML5 的普及还需要 10 年。但事实上,所有浏览器厂商都看准了这个趋势,在大笔投入。大家都已经在路上,唯恐落后。 [caption id="attachment_12339" align="aligncenter" width="410" caption="图2 W3C制定HTML5标准的过程"]
[/caption]   作为首家加入
W3C 的中国互联网企业, UC 非常认同 HTML5 的发展前景,也会积极推动这个标准的普及与发展。 首先我们关注 HTML5 的兼容性,因为我们发现很多开发者都把一多半的精力放在兼容性方面。兼容性首先要对标准全面支持。刚刚发布的 Android 平台 UC8.5 在兼容性方面做了很大提升,兼容性测试跑分为 410+7 ,达到世界第一的水平。当然兼容性的解决也需要过程,最早推出 U3 内核时我们的跑分只有 100 多分。后来我们研发团队在这方面保持了长期专注投入之后才取得了这样的提升结果。 与兼容性同等重要的就是扩展性了,包括手机上各种设备能力的外拓。其实现在业界还没有统一的标准,所以 UC 就在推广这些标准的落地和实行。我们可以看到刚才分裂的状况,苹果不会去关心 Android ,而 Google 也不会去关注中国的一些山寨厂商。所以我们会站在中国手机用户的角度,去把刚才看到的那些和好处切切实实地落地。我们希望能够多做一些务实的事情。 同时我们也基于自身的业务需求,利用 HTML5 来提高展现能力。例如在 UC 资讯中心改版中,我们采用单页面应用设计思路,利用我们自己设计的 ELF 模块化加载器,前端搭载 Zepto ,使用基于事件驱动的 MVC 框架完成了项目展示。新版的 UC 资讯中心也使用了 HTML5 标准中的 Web Storage 和 Application Cache 。 此外我们还在 2011 年 9 月发布了国内最早的移动 Web App 应用中心—— UC 应用中心,希望能给优质 HTML5 应用提供一个很好的展现平台,也让更多的用户可以接触到这些优秀的 Web App 。目前 UC 应用中心已经收录了超过 300 款应用,月活跃用户过千万,应用添加次数超过 5000 万次。 [caption id="attachment_12340" align="aligncenter" width="326" caption="图3 UC应用中心"]
[/caption]  
Web App的发展趋势 HTML5 的蓬勃发展跟移动互联网的发展是密不可分的。过去几年,无线上网的设备数量都在翻番,但终端、操作系统等平台的差异非常大,开发模式、开发语言等都也有不小差异。 HTML5 的出现会是移动互联网的一把万能钥匙。因此, Web App 很可能首先在移动平台取得较好的发展。 从技术角度看,以下三个特点会是 Web App 未来发展的三个主要趋势。
  • 网页应用化
  • 支持离线使用
  • 支持调用手机硬件接口
网页应用化和支持离线使用会让 Web App 的能力得到进一步的拓展。还有就是支持调用手机硬件接口,例如照相接口,除了对焦、光圈、快门之外,还包括白平衡、调色等。如果 WebApp 可以支持的东西全都弄出来之后, Web 开发者会觉得很幸福,因为可以用非常简单的方式做出非常专业的应用。 未来,基于 HTML5 的 Web App 将成为手机上的主流应用形态。我们希望 UC 可以帮助 Web App 的相关标准的应用和普及。我们也会致力于将 UC 打造成对 Web App 支持最完善的一体化服务平台。 作者梁捷,UC(优视科技)技术总裁。1998年毕业于华南理工大学计算机专业,耕耘于中国的电信和互联网市场,在电信及网络计算领域拥有超过10年的技术研发和管理经验。 本文选自《程序员》杂志2012年07期,未经允许不得转载。如需转载请联系 market@csdn.net 《程序员》2012年杂志订阅送好礼活动火热进行中
Logo

20年前,《新程序员》创刊时,我们的心愿是全面关注程序员成长,中国将拥有新一代世界级的程序员。20年后的今天,我们有了新的使命:助力中国IT技术人成长,成就一亿技术人!

更多推荐