图书前言

前    言

Flash ActionScript 3.0是Flash的内置脚本语言,用来向Flash应用程序添加交互性的语言。通过Flash ActionScript 3.0,可以构建包含丰富媒体的 Flash 应用程序。Flash ActionScript 3.0是一种面向对象的语言,提供了class、extends、interface等关键字,其面向对象编程能力已接近于传统语言。利用Flash ActionScript 3.0创建自定义类,可以合理组织代码,提高代码的复用性与扩展性等。

本书以Flash CS3中文版为编程环境,介绍了ActionScript 3.0的基础知识,在此基础上,介绍了ActionScript 3.0面向对象技术,并结合ActionScript 3.0介绍了事件处理、显示编程等特性。本书的主要内容如下。

第1章简单回顾了ActionScript的历史,并从最基本的Flash操作开始,从编程的角度来讨论舞台和主时间轴,进而引出变量这一编程中非常重要的概念,并慢慢深入到简单变量和引用变量等知识,结合Flash的时间轴,详细介绍了变量与帧、图层的关系,使读者初步了解Flash编程的独特之处。

第2章在学习了变量的基础知识后,引入了数据类型的概念,结合ActionScript 3.0,详细介绍了5种简单数据类型的知识及使用技巧,介绍了变量的命名——特别是主时间轴中变量的命名,最后还介绍了变量的默认值、代码优化等知识。

第3章介绍更加重要的复杂数据类型,介绍了创建复杂对象的一般方法及显示对象的独特方法,介绍简单变量与复杂变量之间的区别,并深入介绍了两种垃圾回收机制。本章的最后,介绍了复杂数据类型转换的两种方法及数组运算符在编程中的应用技巧。

第4章主要介绍包括for each in等在内的控制程序流程的各种语句,并通过程序分析各种语句的区别,使读者能适时地应用这些语句。本章还介绍了间隔循环的几种方法,着重介绍了enterFrame事件及Timer类的使用方法及技巧。

第5章介绍函数的定义、调用、引用、参数传递等基本知识,介绍了参数默认值等新增功能,并介绍许多包括Function类、arguments类、动态调用等相对高级的知识,并通过实例介绍如何有效地使用函数。

第6章介绍了flash.display包中的相关类,理解这些类的架构思想,着重介绍显示对象和显示列表的概念,详细解说了向上和向下遍历显示列表的方法、深度的智能管理等知识。

第7章重点介绍了ActionScript 3.0的事件处理机制,在介绍了事件流、默认行为、优先级、弱引用等基本知识后,结合显示对象介绍了按键、鼠标等事件处理。

第8章从Flash坐标系出发,介绍了注册点、中心点与坐标的关系,角度和弧度的知识,Math类的使用方法及扩展Math类的实现,介绍了点、直线、矩形和相关Point类、Line类、Rectangle类,在学习数学知识的过程中掌握显示对象的相关属性。

第9章介绍了运动的概念及在Flash中的实现原理,介绍了力、速度、加速度等的实现技巧,并进一步提出向量的概念,且给出了多个包括高级碰撞在内的效果。

第10章详细介绍了ActionScript 3.0的面向对象特性,重点讲解了类、包、属性、方法等概念,使读者了解实例成员与类成员的区别和联系。在此基础上,介绍继承这种重要的特性,并了解构造函数、实例成员、类成员继承中的规则,介绍了文档类及其本质。本章的最后,介绍了类和类之间的关系及其简单的判断方法,介绍了基于接口的初步思想。

第11章介绍设计模式。学习面向对象思想的一种途径是学习现成的设计模式,本章在第10章知识的基础上,重点介绍了如何在实践中应用面向对象的特性,并理解观察者模式与事件处理、合成模式与显示对象架构的关系。

第12章介绍了Flash与ASP、PHP交互的有关知识,介绍了FMS与视频的有关知识,并介绍Flash留言板、文件上传、天气预报系统、文本聊天、视频聊天等应用。

第13章详细介绍了正则表达式和E4X的知识,介绍了查找与替换、代码加亮等程序的实现,介绍了如何在应用程序中使用XML的技巧。

本书是作者从多年的实践中汲取宝贵的经验编写而成的,其中介绍了许多数学、物理、设计模式等知识,并从这些知识出发,结合ActionScript 3.0的特性,介绍了大量编程经验和技巧,使读者看完本书就能开发较大型的应用程序。

本书适合初、中级读者,适合游戏/网站开发人员、网络应用程序开发人员等,也适合广大的ActionScript 3.0编程爱好者。

本书主要由章精设、胡登涛编著,其他参与编写的人员还有缪亮、梁博、王姬芦、应海波、朱志坚、徐爱娟、王士强、潘水泽、贾达森、林昱、陈绍荣、盛毅君、方扬松等。在创作的过程中,由于水平有限,错误在所难免,希望广大读者批评指正。