 |
Advanced ActionScript 3 with Design Patterns by Joey Lott, Danny Patterson
Book Summary InformationAuthor: Danny Patterson, Joey Lott Edition: Paperback Audio: English (Unknown); English (Original Language); English (Published) Published: 2006-11-12 ISBN: 0321426568 Number of pages: 304 Publisher: Adobe Press
Book Reviews of Advanced ActionScript 3 with Design PatternsBook Review: Perfect balance of concepts and AS3 specific idioms Summary: 5 Stars
This book is clearly written by authors who "think in ActionScript 3" and it's written at the perfect level for folks who already understand design patterns but want some guidance on how they apply (or don't) in AS3.
If you are looking for an introduction to Design Patterns, this book does a decent job of that but it generally assumes you have a bit of understanding in that regard. The HeadFirst book (java) walks you through application evolution which really makes the case for why the patterns are useful. The HeadFirst book also includes exercises that really make the concepts sink in and teach you to recognize when each pattern applies. However, the head first book is very much a java book. Similarly, the original design patterns book by the Gang of Four (GoF) is about design patterns in C++.
This book, however is written clearly from the perspective of an ActionScript 3 (AS3) programmer. In some core ways, AS3 is very different than Java and even more so with respect to C++. The event model is baked into the language and asynchronous programming is a different style. Also, XML and XPath are native constructs in ActionScript 3, not libraries like they are in other languages. These differences (among others) imply that some of the original GoF and Java patterns manifest themselves differently and some patterns don't apply at all. This book doesn't merely take the Java or C++ idioms and make them run under ActionScript 3. They've totally re-thought them and presented the ones that are appropriate for AS3 in a way that is probably ideal for AS3. They've also left out or provided alternatives for the traditional ones that are not appropriate considering the language differences. For instance, the observer pattern is one of the core GoF and HeadFirst patterns. However, it doesn't show up in this book. Instead, there is a chapter on "WORKING WITH EVENTS" which is the native AS3 construct that essentially takes the place of the observer pattern. In contrast, the O'reilly book happily shows you an AS3 translation of the GoF/HeadFirst observer pattern and never tells you to use the built-in event structure instead.
Not only do the authors demonstrate their "thinking in AS3" at the level of design patterns but their code examples include lots of little AS3 specific idioms. AS3 still shows it's dynamic language roots in subtle ways and these authors play to that strength. For instance, a dynamic class inherited from the Proxy class includes a method called, getProperty(). In chapter 4, they override this method and use it in combination with E4X (the native XML capability), to provides an elegant way to build a generic application settings framework that you can use in any application without modification. If your XML settings file changes, the class will appear to magically change its interface. The chapter is about the Singleton pattern but I learned about dynamic/Proxy/getProperty() and E4X idioms as a side benefit.
If I had one complaint about this book, it's a minor one and it's a complaint that I also make about the Java language and I'm now starting to regularly make about Adobe's recommendations with respect to AS3 class interfaces. Like C# and Python and other more recent languages, AS3 has a construct for turning public property references into get/set function calls without changing the calling code. This book shows you that style of coding as well as the Java recommended getSomeProperty/setSomeProperty style but it recommends that you never use public properties in your class interfaces. In my mind, the main advantage to having the get/set function language feature is that you can start out with public properties and later change them to accessors methods without breaking the calling code. The reason we don't recommend that you have public properties in java is that there is no language feature that allows you to later add accessor methods without breaking the calling code. In Java, the lessor of two evils is to have you always create them up front. I see no reason to live with the same evil in AS3. However, this is minor nit and now that you've read my explanation here, you can ignore the recommendation. :)
I highly recommend this book. If you have the least bit of experience with design patterns and are now coding in AS3, just get this book. If you are totally new to the concept of design patterns, then you may want to get the HeadFirst book AND this book.
Summary of Advanced ActionScript 3 with Design PatternsToday's ActionScript-based applications require increasingly sophisticated architectures and code. This book aids intermediate and advanced ActionScript developers in learning how to plan and build applications more effectively. You'll learn how to apply design patterns as solutions to common programming scenarios. Beyond a reference, Advanced ActionScript with Design Patterns is a practical guide complete with sample mini-applications illustrating each design pattern. Table of Contents: Part I - Successful Projects 1. How to Design Applications 2. Programming to Interfaces Part II - Patterns 3. MVC 4. Singleton 5. Factory (Abstract Factory and Factory Method) 6. Proxy 7. Iterator 8. Composite 9. Decorator 10. Command 11. Memento 12. State Part III - Advanced ActionScript Topics 13. Working with Events 14. Sending and Loading Data 15. E4X (XML) 16. Regular Expressions
|
 |
|
|
ActionScript 3.0 Game Programming University (2nd Edition)by Gary Rosenzweig Que; Published: 2011-01-23; Paperback; BookBest price: $23.98Price in other shops: $44.99
Head First Design Patternsby Elisabeth Freeman, Eric Freeman, Bert Bates, Kathy Sierra, Elisabeth Robson O'Reilly Media; Published: 2004-11-01; Paperback; BookBest price: $24.00Price in other shops: $49.99
AdvancED Game Design with Flashby Rex van der Spuy friendsofED; Published: 2010-09-01; Paperback; BookBest price: $29.24Price in other shops: $44.99
Enterprise Development with Flex: Best Practices for RIA Developers (Adobe Dev Lib)by Yakov Fain, Victor Rasputnis, Anatole Tartakovsky O'Reilly Media; Published: 2010-03-30; Paperback; BookBest price: $5.64Price in other shops: $54.99
AdvancED ActionScript 3.0 Animationby Keith Peters friendsofED; Published: 2008-12-23; Paperback; BookBest price: $16.12Price in other shops: $39.99
Foundation Actionscript 3.0 Animation: Making Things Move!by Keith Peters friendsofED; Published: 2007-04-09; Paperback; BookBest price: $17.99Price in other shops: $39.99
Flex 4 Cookbookby Joshua Noble, Todd Anderson, Garth Braithwaite, Marco Casario, Rich Tretola O'Reilly Media; Published: 2010-05-27; Paperback; BookBest price: $24.94Price in other shops: $49.99
ActionScript 3.0 Cookbook: Solutions for Flash Platform and Flex Application Developersby Joey Lott, Darron Schall, Keith Peters Adobe; O'Reilly Media; Published: 2006-10-18; Paperback; BookBest price: $3.85Price in other shops: $39.99
Essential ActionScript 3.0 (Essential)by Colin Moock Adobe Dev Library; Published: 2007-06-22; Paperback; BookBest price: $18.20Price in other shops: $54.99
ActionScript 3.0 Design Patterns: Object Oriented Programming Techniques (Adobe Developer Library)by William Sanders, Chandima Cumaranatunge Adobe Developer Library; Published: 2007-07-23; Paperback; BookBest price: $18.20Price in other shops: $44.99
|