Wednesday, March 10, 2010

Book Review: Enterprise Development with Flex

I was very happy to learn that Yakov Fain and his colleagues at Farata Systems were working on a new book, especially one with both “Flex” and “Enterprise” in its title. In my work developing Enterprise Flex projects, I often feel that many of the resources out there are targeted at Media applications developers and not at the developers of large-scale Enterprise Flex applications. This is why I rushed to get a PDF copy of the rough-cut version of Enterprise Development with Flex.

So what's in this book? I’ve reviewed a selection of the chapters for you.

It starts with a very down-to-earth comparison of the different available Flex Frameworks, something I’ve wanted to read for a long time, Chapter 1: Comparing Selected Flex Frameworks describes a simple Flex application and showcases the different implementations of the application using popular existing frameworks such as Cairngorm, Mate, PureMVC, and Clear Toolkit, which is Frata's own solution. After discussing the advantages and disadvantages of each solution, the authors conclude that different frameworks are suitable for different scenarios. Chapter 2: Selected Design Patterns discusses the use of different design patterns in Flex. I loved the detailed description of the Proxy pattern, which actually gives you a full-detail "under the hood" description of the Flex Data Binding mechanism.

Chapter 4: Equipping Enterprise Flex Projects describes the process required to set up a Flex project, starting with the team's staffing considerations, and goes on to define the different roles you may need to make up a Flex team. The authors end up with 3 basic roles – the Flex Architect, UI Developers and Component Developers. They describe each role and its responsibilities, and go on to describe different solutions available today for the project's infrastructure including Hibernate, Spring Integration, Logging and so on.

Chapter 6: Open Source Networking Solutions covers BlazeDS and the AMF protocol. The authors truly share their extensive experience on the subject of web clients to server connectivity. They discuss topics such as the differences between BlazeDS and LCDS, BlazeDS architecture, different use cases with BlazeDS, and also cover many advanced Flex networking issues.

Who should read this book? I think this book is an excellent read for advanced Flex Developers/Architects. For me, this was my first chance to read about Flex Development from a very professional angle, an angle you may find in advanced Java books. This book won’t teach you how to code but it will definitely enrich your knowledge as an architect, team leader or advanced Flex coder.

No comments: