了解HTML5
HTML 5俨然已经成为Web开发社区的主要热点,相应的出版物也越来越多。笔者一直在关注HTML 5技术的发展,最近阅读了两本有关HTML 5技术的中文书籍,在这里把自己的阅读体会写出来,希望能够让读者有所收获。
我所阅读的两本书分别是《HTML 5揭秘》、《HTML 5高级程序设计》。
《HTML 5揭秘》是一本不错的入门读物,英文原名是《HTML 5:Up and Running》,引自O'Reilly出版社,作者Mark Pilgrim是Google的员工。这本书的主要优点也是我最欣赏的几个地方:
详细介绍了HTML 5特性检测库Modernizr。浏览器对前端技术的支持程度一直是令人头疼的问题。特别对于像HTML 5这样的新技术来说,Web开发人员在使用其强大功能之前,必须判断浏览器是否支持。这本书从一开始就引入了开源HTML 5特性检测库Modernizr,只需通过简单的JavaScript函数调用,即可判断某项具体的HTML 5特性是否在当前运行的浏览器中得到支持。读者能够从书中找到几乎所有主要HTML 5特性的判断函数和代码示例,非常方便。据了解,Modernizr是目前社区中最权威、应用最广泛的特性检测库,InfoQ中文站也曾经报道过 ,目前最新的版本是2.0,它所支持的检测列表可以查看这里。
提供了一些模拟HTML 5技术的办法。如第一条所说,有些浏览器(或者版本)对HTML 5技术不支持,开发人员需要找到相应的解决办法。本书在介绍HTML 5特性的时候,针对不支持的情况,也提供了一些小技巧。比如,对于Canvas绘图特性,IE 8就不支持相应的API。作者介绍了开源的JavaScript库——ExplorerCanvas,开发人员只需在页面顶部引入该库,就可以使用Canvas API。
分享了一些实用工具。本书对HTML 5的video和audio标签的讲述花费了不少篇幅,特别是针对各浏览器对视频格式的不兼容问题,作者介绍了一些免费的视频转换工具,还比较深入地分析 了视频编码技术,读者在学习这些技术的同时,可以直接动手实践一把,对知识的理解会比较透彻。
“扩展阅读”的内容很丰富。刚才说到,本书是面向入门读者的,所以内容相对浅显一点,不过我发现在每一章末尾的“扩展阅读”一节,作者列举了精彩的文章链接,而且内容量很大,非常适合想进一步深入的读者拿来阅读。可以说,一本小书附带了一套大百科。
本书提供在线版本。这是我非常欣赏的一个地方。毕竟 HTML5作为正在不断发展演化的新技术,相应的知识点都在更新。所以作者在网上以“Dive Into HTML5”为名发布了本书的全部内容并不断更新。如果读者想了解某项技术在最新浏览器上的支持情况,那么可以直接从在线版本中找到相应的章节查看。中英 文结合,即可以快速入门HTML 5,又能及时了解最新的动态,何乐而不为?
《HTML 5高级程序设计》是一本比较专业的图书,英文原名是《Pro HTML5 Programming》,由Apress出版社出版。说这本书比较专业,是相对《HTML 5揭秘》来说,主要表现在以下几个方面:
覆盖的内容比较全。本书介绍了几乎所有主要的HTML 5特性,除了常见的Canvas、Video\Audio、Geolocation之外,还包括后台处理特性Web Workers、全双工通信WebSockets等泛HTML5的技术,内容非常全面,读者可以通过这本书对HTML 5的各个知识点有一个完整的了解。
实战性比较强。这本书虽然涵盖的范围比较广,但丝毫没有影响内容的深度。我觉得作者在写这本书的时候抱着一种实用主义的心态,无论是代码 示例还是特性描述,都直击问题的要害,适合Web开发人员快速上手并应用于生产环境中。比如在介绍WebSockets API时,作者不仅详细比较了这种新的通信方式与HTTP、轮询机制的优劣,而且给出了完整的WebSocket服务器和客户端代码。
代码示例丰富。作者在书中提供了大量的专业级代码,在每一个特性的后面,都辅助代码应用,一方面帮助读者更好的领会特性的含义,另一方面也方便读者直接在实际开发中尝试采用这些代码示例。完整的源代码可以在这里下载。
总之,这两本各有千秋,《HTML 5揭秘》适合入门,《HTML 5高级程序设计》适合深入学习。虽然预计到2012年才会正式发布HTML 5标准,但是Web开发人员不能无所事事地等待这个时间点,毕竟HTML 5技术的发展和应用已经深入人心,在2012年发布候选标准之后,浏览器厂商将尽可能的完善各自对HTML 5技术的支持程度,连Windows 8操作系统都将支持HTML 5应用,我们还在等什么?!
对于HTML 5的学习,我认为最重要的还是实践,如果只停留在书本知识上,对技术很难有透彻的理解。除了出版物外,还有许多在线的学习资源可以帮助读者了解和应用HTML 5新技术,这里列举几个笔者认为不错的网站链接:
http://www.w3school.com.cn/html5/——w3school提供的HTML 5中文教程,内容相对简单易学,亮点是可以现学现用地在网页中运行示例代码来查看HTML 5特性。
http://html5demos.com/——丰富的HTML 5演示程序和代码。
http://www.apple.com/html5/——Safari的HTML 5资源。
http://ie.microsoft.com/testdrive/——IE的HTML 5资源。
https://developer.mozilla.org/en/html/html5——Firefox的HTML 5资源。
http://www.mhtml5.com/——HTML5研究小组,致力于HTML 5在中国的发展和应用。
http://www.w3ctech.com/——Web标准化交流会,普及W3C标准。
http://www.w3.org/TR/html5/——HTML 5的W3C标准
补充:web前端 , HTML/CSS ,