
ActionScript 3.0 Design Patterns
by Sanders, BillBuy New
Rent Textbook
Rent Digital
Used Textbook
We're Sorry
Sold Out
How Marketplace Works:
- This item is offered by an independent seller and not shipped from our warehouse
- Item details like edition and cover design may differ from our description; see seller's comments before ordering.
- Sellers much confirm and ship within two business days; otherwise, the order will be cancelled and refunded.
- Marketplace purchases cannot be returned to eCampus.com. Contact the seller directly for inquiries; if no response within two days, contact customer service.
- Additional shipping costs apply to Marketplace purchases. Review shipping costs at checkout.
Summary
Author Biography
Dr. William Sanders is a Professor of Interactive Information Technology at the University of Hartford. He teaches courses in Flash, ActionScript, Flash Media Server, PHP, C#, SQL, and XHTML among other Internet languages. He has published 44 computer and computer-related books, written software ranging from Basic to Flash Media Server ActionScript and served as a consultant for different computer software companies.
Dr. Chadima Cumaranatunge is an Assistant Professor of Interactive Information Technology at the University of Hartford. He teaches an introduction to the IIT major, covering Flash and some ActionScript, a gaming course using Flash and ActionScript as well as educational technology courses in the Education, Nursing, and Health Professions College. Recently he received a grant to teach an experimental course in robotics.
Table of Contents
Preface | p. xi |
Constant Change | |
Object-Oriented Programming, Design Patterns, and ActionScript 3.0 | p. 3 |
The Pleasure of Doing Something Well | p. 3 |
OOP Basics | p. 10 |
Abstraction | p. 11 |
Encapsulation | p. 15 |
Inheritance | p. 24 |
Polymorphism | p. 34 |
Principles of Design Pattern Development | p. 42 |
Program to Interfaces over Implementations | p. 45 |
Favor Composition | p. 49 |
Maintenance and Extensibility Planning | p. 57 |
Your Application Plan: It Ain't You Babe | p. 60 |
Creational Patterns | |
Factory Method Pattern | p. 65 |
What Is the Factory Method Pattern? | p. 65 |
Abstract Classes in ActionScript 3.0 | p. 68 |
Minimalist Example | p. 69 |
Hiding the Product Classes | p. 73 |
Example: Print Shop | p. 74 |
Extended Example: Color Printing | p. 80 |
Key OOP Concepts Used in the Factory Method Pattern | p. 84 |
Example: Sprite Factory | p. 84 |
Example: Vertical Shooter Game | p. 90 |
Summary | p. 100 |
Singleton Pattern | p. 101 |
What Is the Singleton Pattern? | p. 101 |
Key OOP Concepts Used with the Singleton Pattern | p. 102 |
Minimalist Abstract Singleton | p. 105 |
When to Use the Singleton Pattern | p. 112 |
Summary | p. 125 |
Structural Patterns | |
Decorator Pattern | p. 129 |
What Is the Decorator Pattern? | p. 129 |
Key OOP Concepts Used with the Decorator Pattern | p. 132 |
Minimalist Abstract Decorator | p. 135 |
Applying a Simple Decorator Pattern in Flash: Paper Doll | p. 141 |
Decorating with Deadly Sins and Heavenly Virtues | p. 148 |
Dynamic Selection of Concrete Components and Decorations: A Hybrid Car Dealership | p. 164 |
Summary | p. 176 |
Adapter Pattern | p. 177 |
What Is the Adapter Pattern? | p. 177 |
Object and Class Adapters | p. 179 |
Key OOP Concepts in the Adapter Pattern | p. 185 |
Example: Car Steering Adapter | p. 185 |
Extended Example: Steering the Car Using a Mouse | p. 193 |
Example: List Display Adapter | p. 194 |
Extended Example: Displaying the O'Reilly New Books List | p. 199 |
Summary | p. 203 |
Composite Pattern | p. 204 |
What Is the Composite Pattern? | p. 204 |
Minimalist Example of a Composite Pattern | p. 207 |
Key OOP Concepts in the Composite Pattern | p. 217 |
Example: Music Playlists | p. 217 |
Example: Animating Composite Objects Using Inverse Kinematics | p. 222 |
Using Flash's Built-in Composite Structure: the Display List | p. 233 |
Summary | p. 243 |
Behavioral Patterns | |
Command Pattern | p. 247 |
What Is the Command Pattern? | p. 247 |
Minimalist Example of a Command Pattern | p. 251 |
Key OOP Concepts in the Command Pattern | p. 255 |
Minimalist Example: Macro Commands | p. 255 |
Example: Number Manipulator | p. 258 |
Extended Example: Sharing Command Objects | p. 263 |
Extended Example: Implementing Undo | p. 266 |
Example: Podcast Radio | p. 270 |
Extended Example: Dynamic Command Object Assignment | p. 276 |
Summary | p. 281 |
Observer Pattern | p. 282 |
What Is the Observer Pattern? | p. 282 |
Key OOP Concepts Used with the Observer Pattern | p. 285 |
Minimalist Abstract Observer | p. 289 |
Example: Adding States and Identifying Users | p. 294 |
Dynamically Changing States | p. 302 |
Example: Working with Different Data Displays | p. 318 |
Summary | p. 330 |
Template Method Pattern | p. 331 |
What Is the Template Method Pattern? | p. 331 |
Key OOP Concepts Used with the Template Method | p. 335 |
Minimalist Example: Abstract Template Method | p. 338 |
Employing Flexibility in the Template Method | p. 341 |
Selecting and Playing Sound and Video | p. 344 |
Hooking It Up | p. 351 |
Summary | p. 356 |
State Pattern | p. 357 |
Design Pattern to Create a State Machine | p. 357 |
Key OOP Concepts Used with the State Pattern | p. 360 |
Minimalist Abstract State Pattern | p. 361 |
Video Player Concrete State Application | p. 367 |
Expanding the State Design: Adding States | p. 374 |
Adding More States and Streaming Capabilities | p. 382 |
Summary | p. 397 |
Strategy Pattern | p. 398 |
What Is the Strategy Pattern? | p. 398 |
Key OOP Concepts Used with the Strategy Pattern | p. 400 |
Minimalist Abstract State Pattern | p. 402 |
Adding More Concrete Strategies and Concrete Contexts | p. 406 |
Working with String Strategies | p. 414 |
Summary | p. 423 |
Multiple Patterns | |
Model-View-Controller Pattern | p. 427 |
What Is the Model-View-Controller (MVC) Pattern? | p. 427 |
Communication Between the MVC Elements | p. 428 |
Embedded Patterns in the MVC | p. 430 |
Minimalist Example of an MVC Pattern | p. 431 |
Key OOP Concepts in the MVC Pattern | p. 443 |
Example: Weather Maps | p. 443 |
Extended Example: Infrared Weather Maps | p. 451 |
Example: Cars | p. 457 |
Custom Views | p. 463 |
Adding a Chase Car | p. 466 |
Summary | p. 468 |
Symmetric Proxy Pattern | p. 469 |
Simultaneous Game Moves and Outcomes | p. 469 |
The Symmetric Proxy Pattern | p. 473 |
Key OOP Concepts Used with the Symmetric Proxy | p. 475 |
The Player Interface | p. 477 |
The Referee | p. 478 |
Information Shared Over the Internet | p. 483 |
Player-Proxy Classes | p. 486 |
Classes and Document Files Support | p. 494 |
Summary | p. 498 |
Index | p. 499 |
Table of Contents provided by Ingram. All Rights Reserved. |
An electronic version of this book is available through VitalSource.
This book is viewable on PC, Mac, iPhone, iPad, iPod Touch, and most smartphones.
By purchasing, you will be able to view this book online, as well as download it, for the chosen number of days.
Digital License
You are licensing a digital product for a set duration. Durations are set forth in the product description, with "Lifetime" typically meaning five (5) years of online access and permanent download to a supported device. All licenses are non-transferable.
More details can be found here.
A downloadable version of this book is available through the eCampus Reader or compatible Adobe readers.
Applications are available on iOS, Android, PC, Mac, and Windows Mobile platforms.
Please view the compatibility matrix prior to purchase.