ActionScript 3.0 Design Patterns

by
Format: Paperback
Pub. Date: 2007-07-16
Publisher(s): Adobe Developer Library
List Price: $44.99

Buy New

Usually Ships in 5-7 Business Days
$44.95

Rent Textbook

Select for Price
There was a problem. Please try again later.

Rent Digital

Rent Digital Options
Online:1825 Days access
Downloadable:Lifetime Access
$43.19
*To support the delivery of the digital material to you, a digital delivery fee of $3.99 will be charged on each digital item.
$43.19*

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

This hands-on introduction to design patterns is for experienced Flash developers ready to tackle sophisticated programming techniques with ActionScript 3.0. Now that ActionScript has been reengineered from top to bottom as a true object-oriented programming (OOP) language, reusable design patterns are an ideal way to solve common problems in Flash applications. But learning ActionScript 3.0 is a challenge for anyone without adding this extra learning curve. ActionScript 3.0 Design Patterns takes you step by step through the process, first by explaining how design patterns provide a clear road map for structuring code that actually makes OOP languages easier to learn and use. You will then learn about various types of design patterns and construct small abstract examples before trying your hand at building full-fledged working applications outlined in the book.

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

Prefacep. xi
Constant Change
Object-Oriented Programming, Design Patterns, and ActionScript 3.0p. 3
The Pleasure of Doing Something Wellp. 3
OOP Basicsp. 10
Abstractionp. 11
Encapsulationp. 15
Inheritancep. 24
Polymorphismp. 34
Principles of Design Pattern Developmentp. 42
Program to Interfaces over Implementationsp. 45
Favor Compositionp. 49
Maintenance and Extensibility Planningp. 57
Your Application Plan: It Ain't You Babep. 60
Creational Patterns
Factory Method Patternp. 65
What Is the Factory Method Pattern?p. 65
Abstract Classes in ActionScript 3.0p. 68
Minimalist Examplep. 69
Hiding the Product Classesp. 73
Example: Print Shopp. 74
Extended Example: Color Printingp. 80
Key OOP Concepts Used in the Factory Method Patternp. 84
Example: Sprite Factoryp. 84
Example: Vertical Shooter Gamep. 90
Summaryp. 100
Singleton Patternp. 101
What Is the Singleton Pattern?p. 101
Key OOP Concepts Used with the Singleton Patternp. 102
Minimalist Abstract Singletonp. 105
When to Use the Singleton Patternp. 112
Summaryp. 125
Structural Patterns
Decorator Patternp. 129
What Is the Decorator Pattern?p. 129
Key OOP Concepts Used with the Decorator Patternp. 132
Minimalist Abstract Decoratorp. 135
Applying a Simple Decorator Pattern in Flash: Paper Dollp. 141
Decorating with Deadly Sins and Heavenly Virtuesp. 148
Dynamic Selection of Concrete Components and Decorations: A Hybrid Car Dealershipp. 164
Summaryp. 176
Adapter Patternp. 177
What Is the Adapter Pattern?p. 177
Object and Class Adaptersp. 179
Key OOP Concepts in the Adapter Patternp. 185
Example: Car Steering Adapterp. 185
Extended Example: Steering the Car Using a Mousep. 193
Example: List Display Adapterp. 194
Extended Example: Displaying the O'Reilly New Books Listp. 199
Summaryp. 203
Composite Patternp. 204
What Is the Composite Pattern?p. 204
Minimalist Example of a Composite Patternp. 207
Key OOP Concepts in the Composite Patternp. 217
Example: Music Playlistsp. 217
Example: Animating Composite Objects Using Inverse Kinematicsp. 222
Using Flash's Built-in Composite Structure: the Display Listp. 233
Summaryp. 243
Behavioral Patterns
Command Patternp. 247
What Is the Command Pattern?p. 247
Minimalist Example of a Command Patternp. 251
Key OOP Concepts in the Command Patternp. 255
Minimalist Example: Macro Commandsp. 255
Example: Number Manipulatorp. 258
Extended Example: Sharing Command Objectsp. 263
Extended Example: Implementing Undop. 266
Example: Podcast Radiop. 270
Extended Example: Dynamic Command Object Assignmentp. 276
Summaryp. 281
Observer Patternp. 282
What Is the Observer Pattern?p. 282
Key OOP Concepts Used with the Observer Patternp. 285
Minimalist Abstract Observerp. 289
Example: Adding States and Identifying Usersp. 294
Dynamically Changing Statesp. 302
Example: Working with Different Data Displaysp. 318
Summaryp. 330
Template Method Patternp. 331
What Is the Template Method Pattern?p. 331
Key OOP Concepts Used with the Template Methodp. 335
Minimalist Example: Abstract Template Methodp. 338
Employing Flexibility in the Template Methodp. 341
Selecting and Playing Sound and Videop. 344
Hooking It Upp. 351
Summaryp. 356
State Patternp. 357
Design Pattern to Create a State Machinep. 357
Key OOP Concepts Used with the State Patternp. 360
Minimalist Abstract State Patternp. 361
Video Player Concrete State Applicationp. 367
Expanding the State Design: Adding Statesp. 374
Adding More States and Streaming Capabilitiesp. 382
Summaryp. 397
Strategy Patternp. 398
What Is the Strategy Pattern?p. 398
Key OOP Concepts Used with the Strategy Patternp. 400
Minimalist Abstract State Patternp. 402
Adding More Concrete Strategies and Concrete Contextsp. 406
Working with String Strategiesp. 414
Summaryp. 423
Multiple Patterns
Model-View-Controller Patternp. 427
What Is the Model-View-Controller (MVC) Pattern?p. 427
Communication Between the MVC Elementsp. 428
Embedded Patterns in the MVCp. 430
Minimalist Example of an MVC Patternp. 431
Key OOP Concepts in the MVC Patternp. 443
Example: Weather Mapsp. 443
Extended Example: Infrared Weather Mapsp. 451
Example: Carsp. 457
Custom Viewsp. 463
Adding a Chase Carp. 466
Summaryp. 468
Symmetric Proxy Patternp. 469
Simultaneous Game Moves and Outcomesp. 469
The Symmetric Proxy Patternp. 473
Key OOP Concepts Used with the Symmetric Proxyp. 475
The Player Interfacep. 477
The Refereep. 478
Information Shared Over the Internetp. 483
Player-Proxy Classesp. 486
Classes and Document Files Supportp. 494
Summaryp. 498
Indexp. 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.