Enterprise Development with Flex Book Review
O'Reilly has been on a Flex fixation, with Enterprise Development with Flex being their second Flex book publishing in the last few months. Two weeks ago, I reviewed O'Reilly's Flex 4 Cookbook, a "must-have" title for Flex developers. Does Enterprise Development with Flex match this categorization? Read on to find out.This multi-authored book begins with a comparison of several popular Flex frameworks such as Cairngorm, Mate and puremvc ActionScript framework, and ultimately decide that the Clear Toolkit is their framework of choice. Considering the book's authors created the open source MIT-licensed toolkit, this should come as no surprise.
Next, various design patterns ranging from Singleton, Proxy and Mediator to Data Transfer Object, Asynchronous Token and Class Factory are examined. Chapter 3 discusses the components required to build a Flex-based enterprise framework. Chapter 4 covers the external factors such as the type of staff talent required, their workstation configurations, web page interactions, testing, logging and documenting the project at hand. Chapter 5 on Flex Messaging is offers an excellent dive into one of Flex's more challenging aspects. Adobe's Java-based BlazeDS and LiveCycle Data Services (LCDS) are reviewed and demonstrated. Modules and Library options are detailed in Chapter 7, followed by a 50+ page chapter on performance optimization suggestions. Adobe Air and LiveCycle Enterprise Suite are also explored. Chapter 11 on Printing with Flex is another one of the book's gems, as this seemingly simple task often confounds Flex developers seeking the 'flexibility' they need in dynamically generating various PDF-based reports.
The book concludes with an introduction to Model-Driven development courtesy of Adobe's LCDS ES2. The authors show how the process begins using Flash Builder 4, walking through what is generated and how master/detail/search views can be created.
Numerous screenshots and copious quantities of code listings accompany the descriptive text, and the authors clearly have the Flex expertise necessary to be the authoritative subject matter experts on Flex enterprise development. I earned a deeper level of respect for the Flex framework reading this book, though I still don't see myself using it for internal projects any time soon. However, knowing the capabilities this expansive environment has to offer has better prepared me for the time when the request arises to consider if Flex has a role in the enterprise I support.
I have only a few criticisms. So much can be said about Flex that the book could have easily been divided into two or more volumes. More chapters like those on the subjects of printing and messaging would address these very basic yet very challenging enterprise application feature expectations. I would have also preferred to see chapters on integrating Flex with other languages besides Java, such as PHP (beyond the very brief mention of AMFPHP) and ASP.NET.
The authors conclude the book by stating their intended objective: "We tried to discuss the most important subjects that Flex/AIR practitioners face while working on an enterprise RIA. We tried not to just give you better Flex components, but to explain how you can build similar or better ones for your enterprise-wide framework." They succeeded.
Title: Enterprise Development with Fle: Best Practices for RIA Developersx Authors: Yakov Fain, Victor Rasputnis and Anatole Tartakovsky Publisher: O'Reilly Media ISBN: 978-0-596-15416-5 Pages: 688 Price: $54.99 US