To me this book has more emphasis on component development, with Java server side and enhancing the open source side of BlazeDS to bring it in line with LCDS using Farata Systems Clear Toolkit. This is more of a code generation solution based on XDoclet SQL statements and an enhanced set of components. It's more a book about trying to increase developer productivity using their library.
I found that some chapters didn't really follow on from each other, so the book to some extent can be read non-linearly. Chapter 4 in particular could be more of the kind of thing a project manager would read or someone looking to setup a project, whilst the remaining chapters would appeal to the more technical audience like architects/project leads.
PROS: - There are some really great enhancements the guys did to make Flex components more useful. -Great discussion on design patterns - Extensive references to useful links for other projects in the Flex ecosystem througout the book. - There's some fantastic low-level discussion on things like protocols, threading/NIO, Messaging etc. The guys really know their stuff. In particular I was fascinated by Assembler design pattern /ChangeObject to track the delta changes in data and using these to fire off events. It was somewhat reminiscent of Datasets in the .NET arena. This was eventually used in chapter 9 on AIR (v 1.5 - not 2, but features in 2 got an overview: More AIR context than the Flex 4 cookbook) to allow data resynchronisation when an offline system was hooked up again to the central server. - Discussion on printing via PDFs using XPD/AlivePDF. This was one of the benefits Clear Toolkit provided. - The authors actually give an honest appraisal of Flex 'warts and all', and transfer some sage advice I'd not heard about from the 'official sources' : Such as, closures in ActionScript giving rise to memory leaks, ways to improve RSL loading and improving Flex. Ways to submit improvements to the Flex framework itself. CONS: I think my biggest gripes with the book were: - The fact that Clear Toolkit used XDoclet style comments to generate code with straight SQL code. I would envision the code would be susceptible to SQL Injection attacks and because the SQL code had to pertain to a specific database vendor, you were locked in to that syntax. I would have much preferred it, had the book paid more atttention to a Hibernate/JPA based backdrop, perhaps GraniteDS. Or better still been based upon GORM and translated the validation rules in the Groovy DSL into components. I wasn't sure how one to many joins were resolved to the underlying tables so repeating columns got resolved to the individual tables either with Clear Toolkit. - For me I would have much preferred it if the book had dropped the discussion on Cairngorm and PureMVC (since other books cover this in far more detail : For example Pro Flex on Spring by Chris Giametta) and had particularly concentrated on SpiceFactory (and possibly Swiz), - I would have liked to have seen more discussion on Spring ActionScript Framework. In my eyes, had these topics along with GraniteDS been covered, then the book would have been covering the kinds of topic conjured up by the title. - It's got some really sophisticated content. But, in a way this is a double-edged sword, in the way it's presented. The book seems to flit from high level stuff to really complicated code, without really ever hitting the middle ground. I think in part this is due to the fact that reams of code is presented without the kind of cueballs into code breakdown and analysis you get, with the likes of Manning books. Sometime the authors did this be presenting everything then repeating this with snippets of code, but it just didn't quite work well enough for me. I would have much preferred it had the authors taken the path of setting the scene with a high level overview and then describing things in smaller pieces. - I concur with the summation in the final chapter MVC is not necessarily the best solution for Component Driven Development. To me MVP is a far better solution. No mention of this style of design in the book. (Check out upcoming Flex on Java from Manning if you're interested in that approach- plus a couple of issues of Groovymag April/May 2009) - The dryness of the content of certain chapters - Chapter 10 in particular on Life Cycle Enterprise Suite : a workflow/BPM suite from Adobe. - I found it odd also that the book discounted PureMVC because it was a pure ActionScript based framework and didn't make use of MXML, but then later in the chapter on performance in a way contradicted this, by suggesting converting MXML to ActionScript in order to squeeze /reduce the size of the swf files and achieve faster loading of code in the Flash Player. - The quality of the proofreading. I spotted close to twenty silly mistakes and typos in the text on a cursory read through. This doesn't detract from overall book too much. There's a certain irony here, as I offered to assist the authors, but they declined my offer inferring they had this covered! - Some of the images were way too small and so were difficult to read. - The indentation and formatting of nested if statements was really bad throughout the book making the code harder to comprehend. I also didn't like the way method signatures were split over multiple lines and the closing parentheses was on third line with arguments in the middle. SUMMARY: I'd say the book is a worthy addition to a Flex Developers library, with lots of good and advanced ideas in the Clear Toolkit library that are worth taking on board. If you want to have some of the features of LCDS but want to stay with BlazeDS, and avoid the costs of the license fees, then Clear Toolkit is going to be a good inspiration. Drop XDoclet though guys. It's so last century!
PS: I've since read another of Yakov and co's book, Rich Internet Applications with Adobe Flex & Java, published by Sys-Con ISBN-10: 097776222X (Google on theriabook) - an import from US. Although it's an earlier work, it's a slighter better book in my eyes and the chapters seem to build on each other better in that book, so it's not so disjointed. It's also the best book I've seen on describing Flex from a seasoned Java developer perspective. You can also find it on the US Amazon website. It also contains a DVD. You'll also find a review from me on Amazon US for that book.