level 6
之前在北京出差时和《程序员》刘大编辑深聊过AS3相关话题,聊得投机,刘编说希望我对目前国内外AS3/Flex书籍写些书评。结果答应之后,一连两月都没能安排时间写出来,很不好意思。直到8月份项目间隙中才写完了AS3方面的书评,刊登在9月份《程序员》上。10月份将刊登Flex部分的书评。刊登的文章因为杂志篇幅稍作了修整,下面是原文(3050字)。本次书评主要讲述的是纯ActionScript3开发方面的书籍,不涉及Flex/AIR程序开发。ActionScript是用于开发Flash/Flex RIA程序的前端脚本语言,其运行平台是Adobe Flash Player。Flash Player从9.0版本开始正式支持ActionScript3,虚拟机执行效率提高了约十倍。Adobe AIR推出后,ActionScript3同时也成了AIR程序开发的主要语言。ActionScript3完全摒弃了ActionScript2和ActionScript1的混乱和非标准的OOP支持,彻底重建成为一门标准、强大的OOP语言,遵从ECMAScript 4 draft版的规范。熟悉Java和C#的读者,会发现转型学习和使用ActionScript3,非常简单和容易。ActionScript和JavaScript 可以说是同族兄弟,因为都是基于ECMAScript标准。ActionScript3更是超前的实现了ECMAScript 4 draft版的大部分特色功能,也就是所讲下一代的JS2将具备的功能。语言知识类书籍:《Essential ActionScript 3》这本厚达900多页的大部头著作是由Colin Moock完成的, 由笔者喜爱的O’Reilly公司出版。该书 2007年5月底完稿,2007年底8月左右正式在Amazon上亮相。 Colin Moock的Essential ActionScript书系列从ActionScript2时代起一直很受欢迎。这次ActionScript3语言颠覆性的变化也导致了Colin Moock的这本新书完全重写,耗时巨大。本次新书和以往对比,去除了对设计模式的讲解,更加关注于ActionScript3语言本身的教学和知识点的深入。该书最大特点是详尽,从ActionScript3的语法改变,到Flash Player 9 API的重要变化,到重要机制的深层运作机理都基本覆盖到了。整书分为三部分来讲述的:1. ActionScript3语言基础:这一部分以语法为主线来讲述,共19章,约占整书1/2的篇幅还稍多。从ActionScript3的OOP基础语法讲起,类的定义、变量、方法、函数、循环、数据类型、数组、讲起到事件机制、异常、范围、命名空间,XML使用,以Flash Player的安全机制为结束。这部分中对垃圾回收和安全机制的深层讲述尤其值得重点关注。2. 显示编程与互动:本部分重点讲述的是ActionScript3的显示编程API用法(包括位图操作、矢量编程、动态文本框),以及事件流机制在显示编程中的应用,共8章。本部分中尤其推荐“屏幕更新”(Screen Updates)一章,对显示编程的更新机制有详细讲解,对中高级开发人员来说非常实用。3. ActionScript3的部分应用:这部分共4章,关注ActionScript开发以及和Flash创作工具Flash CS3的结合上,涉及了读取外部显示资源(位图、编译好的SWF等)、Flash CS3中的类绑定、以及打包输出swc(注:类似于jar文件)。从书的篇幅安排来看,针对人群偏向于初学者,对语法知识点的讲解足够详细,重点知识全部涉及到了。对中高级开发人员来讲,做为一本开发参考书来购买也很合算,里面的一些使用细节和机理讲述对日后开发有指导意义。虽然价格不菲,但考虑到900多页的货真价实,绝对是物有所值。谈一下本书不足之处,对于读取外部数据和文件,包括读取后台数据方面的知识散落于事件讲述中,没有独立成线,对初学者而言不太友好,也不便查找。另外,作者可能限于篇幅原因,对ActionScript3的新的重要功能“正则表达式”选择了不讲述,也是缺憾之一。本书过多的注重于语法和使用细节,对初学者固然友好,但对于其他语言转来的开发者或是有一定编程基础的开发人员,就略显散乱,不能很快的掌握整个语言架构的脉络和概貌。
2008年11月27日 01点11分