By William Crawford, Jonathan KaplanPublished by O'Reilly Media (http://oreilly.com/catalog/9780596004279/)Architects of buildings and architects of software have more in common than most people think. Both professions require attention to detail, and both practitioners will see their work collapse around them if they make too many mistakes. It's impossible to imagine a world in which buildings get built without blueprints, but it's still common for software applications to be designed and built without blueprints, or in this case, design patterns.A software design pattern can be identified as "a recurring solution to a recurring problem." Using design patterns for software development makes sense in the same way that architectural design patterns make sense--if it works well in one place, why not use it in another? But developers have had enough of books that simply catalog design patterns without extending into new areas, and books that are so theoretical that you can't actually do anything better after reading them than you could before you started.Crawford and Kaplan's J2EE Design Patterns approaches the subject in a unique, highly practical and pragmatic way. Rather than simply present another catalog of design patterns, the authors broaden the scope by discussing ways to choose design patterns when building an enterprise application from scratch, looking closely at the real world tradeoffs that Java developers must weigh when architecting their applications. Then they go on to show how to apply the patterns when writing realworld software. They also extend design patterns into areas not covered in other books, presenting original patterns for data modeling, transaction / process modeling, and interoperability. J2EE Design Patterns offers extensive coverage of the five problem areas enterprise developers face:* Maintenance (Extensibility)* Performance (System Scalability)* Data Modeling (Business Object Modeling)* Transactions (process Modeling)* Messaging (Interoperability)And with its careful balance between theory and practice, J2EE Design Patterns will give developers new to the Java enterprise development arena a solid understanding of how to approach a wide variety of architectural and procedural problems, and will give experienced J2EE pros an opportunity to extend and improve on their existing experience. Superb Reading FeaturesThrough a partnership between O'Reilly Media and Lexcycle, this app includes the same features that have made Stanza an iPhone phenomenon with over a million downloads:* Full book text search* Several fonts and themes to choose from* Built-in dictionary* The ability to add annotations* Landscape view* Extensive cross-referencing and working hyperlinks* Zoom function for images and screenshotsAbout O'Reilly MediaO'Reilly Media spreads the knowledge of innovators through its books, online services, magazines, research, and conferences. Whether it's delivered in print, online, or in person, everything O'Reilly produces reflects the company's unshakeable belief in the power of information to spur innovation. Learn more about Ebooks from O'Reilly at oreilly.com/ebooks.About LexcycleLexcycle is the creator of Stanza Bookbinder which was used to create this standalone book application. Stanza Bookbinder is based on the popular iPhone Ebook reading application, Stanza. For more information about Stanza, visit www.lexcycle.com.