ActionScript 3.0设计模式
ActionScript 3.0设计模式
William Sanders, Chandima Cumaranatunge
方红琴 译
出版时间:2009年07月
页数:487
既然ActionScript已经被彻底地修改成了真正的面向对象语言,在Flash和Flex的应用中就能使用可重用的设计模式来解决常见的问题了。如果你是一个有经验的Flash或Flex开发人员,能够熟练地使用ActionScript 3.0中的编程技术,这本有关设计模式的书正是你目前所需要的。
《ActionScript 3.0设计模式》一书可以带领你循序渐进地掌握ActionScript 3.0中与设计模式相关的知识。讲解过程中,首先给出了每种设计模式清晰的结构框架,这样会使读者学习和使用设计模式的过程变得轻松一些。本书中介绍了许多实用的设计模式,在使用这些设计模式创建复杂的应用程序之前,先学习创建一些抽象的简单的实例。《ActionScript 3.0设计模式》一书主要包括以下几个方面:
* ActionScript 3.0的关键特征和ActionScript 3.0变成真正的面向对象程序设计语言的原因
* 面向对象程序设计中关键的概念,如类、抽象、继承和多态
* 使用设计模式的好处
* 创建模式,包括工厂模式和单态模式
* 结构模式,包括装饰者模式、适配器模式和组合模式
* 行为模式,包括命令模式、观察者模式、策略模式和状态模式
* 多种设计模式的混合应用,包括模型-视图-控制模式和对称代理模式
书中的实例都按由浅入深的顺序精心安排,如用户可选择各种服务选项的电子商务应用程序、选择某类产品或某类产品中的单个产品的用户界面、动作游戏应用程序、录制和播放音频的应用程序等。无论你是具有Java或C++的基础还是有ActionScript 2.0的开发经验,你都能在《ActionScript 3.0设计模式》一书中为你的Flash和Flex应用程序找到优秀的解决方案。
William B.Sanders博士是美国康涅狄格州Hardford大学的教授,是多媒体网站开发与设计方面的专家。他讲授的课程包括Flash、ActionScript、Flash媒体服务器、PHP、C#、SQL和XHTML等、已出版了44本计算机或与计算机专业相关的书籍。
Chandima Cumaranatunge博士是Hardford大学的副教授,从事多媒体网站设计与开发方面的工作。因为具有工程和教学设计方面的背景,Chandima Cumaranatunge博士讲授的课程主要包括创造性学习、网站开发和游戏设计。
  1. 前言
  2. 第I部分 无常的变化
  3. 第1章 面向对象程序设计、设计模式和
  4. ActionScript 3.0
  5. 成功之后的喜悦
  6. OOP基础
  7. 抽象
  8. 封装
  9. 继承
  10. 多态性
  11. 使用设计模式进行软件开发的原则
  12. 使用接口而不是具体的实现
  13. 养成使用组合的习惯
  14. 计划项目时要同时考虑维护和扩展性
  15. 应用程序的计划:并不是必须遵守的原则
  16. 第II部分 创建模式
  17. 第2章 工厂方法模式
  18. 什么是工厂方法模式?
  19. ActionScript 3.0中的抽象类
  20. 工厂方法最小化示例
  21. 隐藏产品类
  22. 实例:打印商店管理程序
  23. 实例扩展:彩色打印
  24. 工厂方法模式中关键的OOP概念
  25. 实例:Sprite工厂
  26. 实例:垂直射击游戏
  27. 小结
  28. 第3章 单态模式
  29. 什么是单态模式
  30. 单态模式中关键的OOP概念
  31. 抽象单态模式最小化示例
  32. 什么时候使用单态模式
  33. 小结
  34. 第III部分 结构模式
  35. 第4章 装饰者模式
  36. 什么是装饰者模式?
  37. 装饰者模式中使用的重要的OOP概念
  38. 抽象装饰者最小化示例
  39. 简单的装饰者模式在Flash中的应用:纸娃娃游戏
  40. 用各种表示正义和邪恶的属性对人物进行装饰
  41. 动态地选择具体的组件和装饰者:汽车销售网站
  42. 小结
  43. 第5章 适配器模式
  44. 什么是适配器模式?
  45. 对象适配器和类适配器
  46. 适配器模式中关键的OOP概念
  47. 实例:汽车驾驶适配器
  48. 实例扩展:使用鼠标驾驶汽车
  49. 实例:显示列表适配器
  50. 实例扩展:显示O’Reilly出版的新书目
  51. 小结
  52. 第6章 组合模式
  53. 什么是组合模式?
  54. 组合模式最小化示例
  55. 组合模式中关键的OOP概念
  56. 实例:歌曲播放列表
  57. 实例:利用反向运动学制作组合对象的动画效果
  58. 使用Flash内置的组合结构:显示列表
  59. 小结
  60. 第IV部分 行为模式
  61. 第7章 命令模式
  62. 什么是命令模式?
  63. 命令模式的最小化示例
  64. 命令模式中主要的OOP概念
  65. 简单的实例:宏命令
  66. 实例:控制数字的值
  67. 实例扩展:共享命令对象
  68. 实例扩展:实现恢复操作
  69. 实例:播客收音机
  70. 扩展实例:命令对象的动态赋值
  71. 小结
  72. 第8章 观察者模式
  73. 什么是观察者?
  74. 观察者模式中关键的OOP概念
  75. 观察者模式最小化示例
  76. 实例:添加状态并标识用户
  77. 动态地改变状态
  78. 实例:采用不同的形式显示数据
  79. 小结
  80. 第9章 模板方法模式
  81. 什么是模板方法模式?
  82. 模板方法用到的主要OOP概念
  83. 最小示例:抽象模板方法
  84. 模板方法的灵活性
  85. 选择和播放声音和视频
  86. 钩起
  87. 小结
  88. 第10章 状态模式
  89. 用来创建一个状态机器的设计模式
  90. 状态设计模式用到的主要OOP概念
  91. 最小抽象状态设计模式
  92. 视频播放器具体状态应用程序
  93. 扩展状态设计:添加状态
  94. 添加更多的状态和流媒体播放能力
  95. 小结
  96. 第11章 策略模式
  97. 什么是策略模式?
  98. 策略模式使用的主要OOP概念
  99. 最小抽象策略模式
  100. 添加更多的具体策略和具体上下文环境
  101. 使用字符串策略
  102. 小结
  103. 第V部分 复合模式
  104. 第12章 模型-视图-控制器模式
  105. 什么是模型-视图-控制器(MVC)模式?
  106. MVC元素间的通信
  107. MVC里的嵌入模式
  108. 一个MVC模式的最小示例
  109. MVC模式里的主要OOP概念
  110. 例子:天气地图
  111. 扩展示例:红外天气地图
  112. 示例:小汽车
  113. 自定义视图
  114. 添加一个追赶的小汽车
  115. 小结
  116. 第13章 对称代理模式
  117. 同步游戏和结果
  118. 对称代理模式
  119. 对称代理模式使用的主要OOP概念
  120. 游戏玩家接口
  121. 游戏裁判员
  122. 在互联网上共享的信息
  123. 游戏玩家-代理类
  124. 支撑类和文档文件
  125. 小结
书名:ActionScript 3.0设计模式
译者:方红琴 译
国内出版社:中国电力出版社
出版时间:2009年07月
页数:487
书号:978-7-5083-7956-2
原版书出版商:O'Reilly Media
William Sanders
 
William B. Sanders博士是哈特福德大学多媒体Web设计和开发方向的教授,主要讲授有关PHP、MySQL、C#、SQL、HTML5、CSS和ActionScript 3.0等内容的多门课程,另外还讲授其他一些Internet语言课程。他合著有《ActionScript 3.0 Design Patterns》(O’Reilly, 2007)一书,多年来一直积极地参与PHP设计模式方面的工作。他出版过45本计算机以及与计算机相关的书,使用过多种不同编程软件,从Basic到汇编语言到Flash Media Server都有涉猎,另外他还担任不同计算机软件公司的顾问和beta版测试人员,包括Macromedia和Adobe。他还是一位Apple iOS开发人员。
 
 
Chandima Cumaranatunge
 
Chandima Cumaranatunge博士是Hartford大学交互信息技术专业的副教授,他讲授IIT技术简介,包括Flash和ActionScript相关的知识、利用Flash 和ActionScript开发游戏以及教育技术课程。最近Chadima Cumaranatunge博士准备开设一门机器人实验方面的课程。
封面介绍
 
 
《ActionScript 3.0模式设计》一书封面上的动物图片是一只玫瑰色的海星。海星是一种独特的海洋生物,它用强有力的爪子吸附在海底,就象用五只轻柔的手臂在海里边移动边捕获食物。海洋中有各种颜色的海星,如红色、粉色、橙色、黄色等,有些海星还带有斑点或花纹。无论在深海还是在浅海都能发现海星,通常是大量的海星成群结队地在一起。
封面上的图片摘自Cassell's Natural History一书。