样书,是第1章到第2章,没有第3章。
此书看目录就知道是本好书,canvas讲的很全面。第1章涉及的数学知识讲的也很好。把向量问题讲通了。第2章里的基础知识部分,讲的太全了。好多原来不懂的都看会了。其他章节涉及的知识很多,都是现在流行的一些范例,作者实在太棒了。当然在这里也要感谢爱飞翔,没有他的辛苦,我们也看不上这样的好书。有一点不好的是,电子版是彩色的,在书中的图片却不是彩色的。
本帖最后由 boia 于 2013-6-1 10:30 编辑
研究HTML5也有两个年头,JS在心目中已经有了烙印,以前总是不能理解JS的原型继承,或者只能说我被C++毒害至深,一说到HTML5,就必须要说说canvas,我记得学canvas动画的启蒙书是《ActionScript3动画高级教程》,每个人都在比较flash和HTML5,可意外的是,我学习HTML5动画竟然靠的是就是一本flash的书,其实在之前我也看过很多HTML5的书,什么HTML5高级教程,HTML5权威指南等等,但是总没有学到精髓的东西,一个偶然的机会,让我有幸接触到这本堪称动画界的大师级作品,从勾股定理开始一点点地对数学、物理进行剖析,很久没有学习的我,也逐渐明白了以前学的科学不一定是纸上谈兵,只是不懂得合理利用罢了。对于动画,我最喜欢的就是利用物理中的弹力,以前也用JS写过缓冲之类的效果,学了弹力之后,更加地对做动画有了一个质的飞跃。自从看了那本书我还做了一些积累,如果有兴趣的话,你可以访问HTML5动画积累,其实在canvas中我最想谈的是事件问题,在flash中,因为本身有事件处理,但因为canvas里的对象不是元素,而是由像素组成的,所以本身是没有事件的,那么事件处理必须你自己来写,如果对于圆形、三角形、矩形之类的规则形状,那还好说,利用公式你可以自己写出不同的函数,但要是不规则的乱七八糟的图形呢?这里只能有两种方法了,一种对象本身就是图片,那还好弄,img还是有事件的,还有一种只能讲不规则图形进行解剖,割成一个规则形状或者若干个规则形状的图形,那么性能就得靠你的算法了。看这本书里的部分章节,我也看到了性能问题,这让我眼前一亮,性能一直是HTML5和flash比较最大的问题,书中说HTML5的性能超过了flash,这句话我现在还是不能认可,因为性能问题主要取决于维护的程序员,算法都是人写出来的,算法的好坏决定了应用的性能,而我现在缺的最多的就是算法,对于一个要搞webgl或者想在游戏界有一番作为的人,算法是必须要学的,这本书对我真心有用,希望得到这本书,谢谢~~~
虽然只是样章,但还是比较长,花了好几天才大体看完,具体的功能代码还没有详细的实践,眼看时间就要截至了,特来写一下自己的阅读感受。首先,溢美之词上面都已经太多了,我这里就不浪费篇幅了。直接进入正题:
1,这本书的有个特定,就是代码没有很多注释,而代码的函数功能、逻辑都是靠文字来介绍的。这一点个人特别不能接受。就像 P16 页那个地方,绘制时钟的代码讲解。如果直接将功能、讲解写进代码的对应注释中,阅读起来就方便多了,也容易理解。但是作者却单独弄出来一个大段落,用文字来描述逻辑。不太符合程序员的阅读习惯。后面也有这样的问题,几乎所有的代码都没有很多有用的注释。
2,就第一章而言,写的太过于零碎,跳跃的介绍了后面章节的内容,这点有利也有弊端。对于初学者来说不太好,容易因为内容比较难,产生挫折感。《html5 程序设计》这本书中的 Canvas 写的就非常好,循序渐进的,慢慢增加讲解功能。比较有趣味,而且从浅到深。
3,书中对应内容给出了 W3C 的标准文档规范,这点非常好,这是最权威、最新的扩展内容,必备!
4,这本书一开始没有从基础开始讲起,需要阅读者具有一定的相关基础,但是书中却掺杂了很多很基础的东西。这样反而占据了很多篇幅。例如 P32 页鼠标事件那段,很明显就可以看出来,根本不需要在讲解。P51 页又见到了HSL 颜色介绍,这些都是很基础的东西。
5,介绍了 离屏 Canvas 等技术,这是我之前没有接触过的,不知道是不是新技术,超赞。
6,第一章最后,专门介绍了数学计算公式,后面还着重讲解了一下贝塞尔曲线函数等,这点超赞。因为 Canvas 画图需要很多数学公式,而我个人来说,数学这块是比较弱的,正好补充了。很好。
7,第二章开始讲解了 Canvas 绘制模型等,讲解比较底层的东西,之前不知道,超赞。
8,第二章的写作风格就比第一章强多了,先给出简单的示例效果,然后对应的 api 、函数 讲解,很好的写作风格。
9,部分地方写的通俗易懂,例如 P63页 这个隐形墨水和路径这块,我刚开始接触的时候,也不理解为什么画出了路径却没有图像,如果当时看到这个故事,就很好理解了。
10,P68 页讲解了一些 arc 和 rect 之前的细节差异,这点之前不知道,超赞。
11,看到第二章后半段,觉得内容的排版安排有问题。Canvas 应该先从线段画起,然后再是其他的图形、填充。但是本书,却把画线放在了后半段。P112 页左右也是,坐标也是 Canvas 的基础,不知道为什么却安排在了后面,感觉排版不太合理。
12,P127 页左右,作者给出了比较详细的前端效果差异对比,这点是超赞的,直观的看到浏览器之间的差异,减少前端开发中的工作量。
总之,这本书写的很详细,很不错。我会考虑买本,虽然价格比较贵。