2011/1/15 参加了百度技术沙龙,在open space 环节,听了讲师讲解的HTML5,对其理解的深入,发现自身存在的不足,整理一下学习笔记。
关于HTML5,它承载了太多的内容,广义的将“HTML/ CSS / JavaScript”全部囊括了一起。
HTML5其实还是专注于两方面:BOM & DOM
Web的本质是: 开放、互通、文本。 à 由此才涉及到“标准”
HTML作为web的一种表现方式,可以归结为两个方面,一个是用于展现内容,使其在互联网上像出版(public) 呈现,这部分为浏览器对象模型(BOM)。
在HTML5设计原理中,“避免不必要的标签,简化、语义化”,归根结底,
如将
<div class=”header”></div> 语义化为 <header>
都是对BOM进行完善。
编程API,是对DOM元素进行操作,影响的是其在web上的行为,像facebook,从登录开始,进入后进行的一系列操作,其实就可以看做是一个应用(application),这个载体就是web。
即API其实关注的就是DOM方面。
当谈到RIA方面的时候, 讲师的观点我觉得分析的也是比较透彻的。
之前老是讲“结构与内容分离,表现和行为分离”,现在发展的前端架构(SOC),本质上就是将原来的RIA工作通过Web方式表现出来(RIA依托的平台是Flash)。
这就是 结构、表现、行为 三个方面:
1. 渐进式增强(PE):保证内容的可访问性,在不同级别的浏览器上允许展现不同的效果。反映到HTML5,通过[modernizer / 特性检测]来实现:
例如在html 的head里去做<if ie>的这种判断。
2. 将[行为组] 变成声名式
原来是看做行为的内容,现在理解为表现。最典型的例子就是animation了。原来认为它是一种浏览器行为,但是在HTML5中,这就是一种动画表现去处理了。
3. 与硬件的结合更紧密了,像IE9,开始对PC硬件进行操作,提供硬件加速功能,在一定程度上推动了前端应用的发展。
由于讲师是做爬虫技术的,对互联网传输数据有广泛的了解,他认为xml是未来数据传输的必然,因为现在的epub、RDFa……都还是为了给人来读的,但是机器与机器间数据的数据传输通信,还是需要使用xml。
这个在HTML5设计原理上,对XHTML的发展也有过讲解,我个人认为遵循“发送时要保守;接收时要开放。”的伯斯塔尔法则(Postel’s Law),使用XML作为最终的web传输格式只能是“看上去很美”。
通过参加InfoQ的活动,发现自己离这些技术的大拿还有很大的差距。“视野应该更开阔些”,当你站在一个很高的高度去理解有些内容的时候,你会幡然领悟“wow,原来是这样子的呀!”。
一如才开始看《HTML5设计原理》,只是明白它具体做了写什么,但是具体为什么这么做,通过这次活动有了些新的认识。
希望“百度技术沙龙”多多组织,比较喜欢Open Space环节,感觉像是一对一的交流,对问题的了解在一问一答中理解的更为深刻。另外,有个小小的建议:在日程表上列出open space的讲师以及分享的主题,在布置会场的时候也能有位置示意,这样可以更容易确定哪些是自己感兴趣,更深入的进行讨论。