1.1 了解HTML 5
HTML 5是HTML的一个重要版本,一经推出就受到了各界开发者的欢迎与支持。根据IT界知名媒体的评论,Web开发将迎向HTML 5的时代。
1.1.1 HTML 5简介
HTML标准自1999年12月发布的HTML 4.01(通常叫HTML 4)后,后继的HTML 5和其他标准被束之高阁,为了推动Web标准化运动的发展,一些公司联合起来,成立了一个叫作Web Hypertext Application Technology Working Group(WHATWG,Web超文本应用技术工作组)的组织。WHATWG组织致力于Web表单和应用程序,而W3C(World Wide Web Consortium,万维网联盟)专注于XHTML 2.0。在2006年,双方决定进行合作,来创建一个新版本的HTML。
HTML5草案的前身名为Web Applications 1.0,它于2004年被WHATWG提出,于2007年被W3C接纳,并成立了新的HTML工作团队。
HTML 5的第一份正式草案已于2008年1月22日公布。目前HTML 5仍然处于完善之中,然而,大部分主流的浏览器已经具备了某些HTML 5支持。
2012年12月17日,万维网联盟(W3C)正式宣布凝结了大量网络工作者心血的HTML 5规范已经正式定稿。W3C的发言稿称:“HTML 5是开放的Web网络平台的奠基石。”这种跨平台的网页程序环境通常被称之为“Web标准”的保护伞,HTML 5以及JavaScript和CSS相关技术能够让开发者在任何设备上都运行开发丰富的网页应用,并且会有越来越多的企业加入到HTML 5的大平台上来。
1.1.2 HTML 5的组织
除了1.1.1节所提到的WHATWG和W3C组织外,还有一个与HTML 5有关的组织——IETF,下面将对它们进行介绍。
1.WHATWG
WHATWG成立于2004年,它是一个以推动网络HTML 5标准为目的而成立的工作小组,最初的成员包括Apple、Mozilla、Google和Opera等浏览器厂商。
2.W3C
W3C于1994年10月在麻省理工学院科学实验室成立,又称为W3C理事会。为了解决Web应用中不同平台、技术和开发者带来的不兼容问题,保障Web信息的顺利和完整流通,万维网联盟制定了一系列标准,并督促Web应用开发者和内容提供者遵循这些标准。标准的内容包括使用语言的规范、开发中使用的导则和解释引擎的行为等。W3C也制定了包括XML和CSS等的众多影响深远的标准规范。
3.IETF
IETF(Internet Engineering Task Force,互联网工程任务组)的主要任务是负责互联网相关技术规范的研发和制定,当前绝大多数国际互联网技术标准出自IETF。HTML 5中定义的各种API(例如线程、Socket、离线)均由IETF组织开发。
1.1.3 HTML 5的特性
开发人员最担心的是新技术推出时由于其不成熟所产生的问题,如果能够实现互联网通用标准,就可以避免各个浏览器之间的不统一。虽然HTML 5的出现已经得到了多数人的理解和支持,但是还是会有人担心许多问题,例如“它会不会产生错误”,“在旧版本上能够正常运行吗”,这些问题都不用担心,以下三个理由足以让开发者放心使用它。
(1)兼容性。HTML 5在旧版本的浏览器上也可以正常运行。
(2)实用性。HTML 5内部并没有封装什么复杂的、不切实际的功能,而只是封装了简单实用的功能。
(3)非革命性的发展。HTML 5的内部功能不是革命性的,只是发展性的。
HTML 5本身具备了多个特性,这些特性也可以作为使用HTML 5的理由,如下所示。
1.语义特性
HTML 5赋予网页更好的意义和结构,更加丰富的标记将随着对RDFa、微数据与微格式等方面的支持,构建对程序、对用户都更有价值的数据驱动的Web。
2.本地存储特性
基于HTML 5开发的网页APP拥有更短的启动时间,更快的联网速度,这些全得益于HTML5 APP Cache,以及本地存储功能。
3.设备兼容特性
从Geolocation功能的API文档公开以来,HTML 5为网页应用开发者们提供了更多功能上的优化选择,带来了更多体验功能的优势。HTML 5提供了前所未有的数据与应用接入开放接口。使外部应用可以直接与浏览器内部的数据直接相连,例如视频影音可直接与microphones以及摄像头相连。
4.连接特性
更高的连接工作效率使得基于页面的实时聊天,更快速的网页游戏体验,更优化的在线交流得到了实现。HTML 5拥有更有效的服务器推送技术,Server-Sent Event和WebSockets就是其中的两个特性,这两个特性能够帮助我们实现服务器将数据“推送”到客户端的功能。
5.网页多媒体特性
支持网页端的Audio、Video等多媒体功能,与网站自带的APPS、摄像头、影音功能相得益彰。
6.三维、图形及特效特性
基于SVG、Canvas、WebGL及CSS 3的3D功能,用户会惊叹于在浏览器中所呈现的惊人视觉效果。
7.性能与集成特性
没有用户会永远等待Loading——HTML 5会通过XMLHttpRequest2(2级XMLHttpRequest)等技术,帮助Web应用和网站在多样化的环境中更快速地工作。
8.CSS 3特性
在不牺牲性能和语义结构的前提下,CSS 3中提供了更多的风格和更强的效果。此外,与之前的Web排版相比,Web的开放字体格式(WOFF)也提供了更高的灵活性和控制性。
1.1.4 HTML 5的优点
HTML 5本身是由W3C推荐的,它的开发是通过谷歌、苹果、诺基亚、中国移动等几百家公司一起酝酿的新技术。HTML 5具有许多优点,例如,可以跨平台使用、即时更新,以及自适应网页设计等,如下总结概括了它的优点。
(1)提高可用性和改进用户的友好体验。
(2)新增加的标记有助于开发人员定义重要的内容。
(3)可以给站点带来更多的多媒体元素(视频和音频)。
(4)可以很好地替代Flash和Silverlight。
(5)当涉及网站的抓取和索引时,对于SEO很友好。
(6)将被大量应用于移动应用程序和游戏。
1.1.5 HTML 5的发展趋势
任何技术都是两面性的,它带来许多优点的同时,也会存在着一些漏洞或缺点,HTML 5也不例外,它也一直在争议中存在,但是,这并不能够阻挡它的发展。
根据IDC的调查报告统计,截至2012年5月,有79%的开发商已经决定要在应用程序中整合HTML 5技术。
从性能角度来说,HTML 5首先是缩减了HTML文档,使文档网页变得更加简单;从用户可读性角度来说,HTML 5的声明方式对用户来说显然更友好一些。
根据统计,2013年全球将有10亿手机浏览器支持HTML 5,同时HTML Web开发者数量将达到200万。毫无疑问,HTML 5将成为主流技术,在未来的5~10年内,会成为移动互联网领域的主宰者。
1.移动优先
从如今层出不穷的移动应用就知道,在这个智能手机和平板电脑大爆炸的时代,移动优先已成趋势,不管是开发什么,都以移动为主。
2.游戏开发者领衔“主演”
许多游戏开发商都被Facebook或者Zynga推动着发展,而未来的Facebook应用生态系统是基于HTML 5的,尽管在HTML 5平台开发出游戏非常困难,但游戏开发商却十分愿意那样做。Fackbook虽然是基于Web应用以及浏览器的,但是它却通过PhoneGap和appmobi的XDK将Web应用游戏打包整合到原生应用中。