Rating: - An essential guide for the professional and experienced J2EE developer
This book is about using patterns for the J2EE platform, using best practices to design applications that use JSP, Servlet, EJB components, and JMS technologies, preventing reinvention of the wheel when it comes to design and the J2EE platform, and finally identifying bad practices in existing designs and refactoring those designs. This book assumes the reader already knows how to program with J2EE technologies and is familiar with UML. Each pattern presented has a problem it addresses, forces involved (what you want to accomplish), and a solution. Also included are related patterns and even some sample code, though the code is by no means complete.
This book is organized into two parts. Part 1, "Patterns and J2EE" covers an introduction to J2EE and patterns. It deals with design considerations for JSP, servlets, and enterprise beans. This part also includes bad practices and refactorings for the J2EE platform.
Chapter 1: "Introduction" is a brief discussion on various topics, including patterns, J2EE platform, defining a pattern, and pattern categorization. It ends by introducing the J2EE Pattern Catalog.
Chapter 2: "Presentation Tier Design Considerations and Bad Practices" and Chapter 3 "Business Tier Design Considerations and Bad Practices" discuss the design considerations and bad practices for the presentation tier and business/integration tiers respectively. The design considerations are issues that a J2EE developer needs to consider while working with the J2EE platform. The topics presented in these chapters point the reader to other sources (such as official specifications and well written books on these topics) for more detailed information on these issues.
Chapter 4: "J2EE Refactorings" includes some of the refactorings the authors have experienced in their work that has enabled them to move designs from a less than optimal solution to a better solution. The refactorings provide another way to think about the material in the rest of the book, providing what the authors believe to be valuable companion material to the pattern catalog. This chapter shows how the authors have been influenced by Martin Fowler and his book "Refactoring". For those readers who are familiar with the Refactoring book, the format of this chapter will be very familiar. However, the content of this chapter is entirely in the context of J2EE technologies, whereas Martin Fowler addresses refactoring at a different level.
Part 2, "J2EE Pattern Catalog" presents the J2EE pattern catalog which contains the patterns that form the core of this book.
Chapter 5, "J2EE Patterns Overview" provides an overview of the J2EE pattern catalog. This chapter begins with a high level discussion of the pattern ideas and explains the way the patterns are categorized into tiers. It also explains the J2EE pattern template, which is used to present all patterns in this book. The chapter discusses all the J2EE patterns and uses a diagram to show their inter-relationships. It also provides a roadmap to the pattern catalog. This roadmap presents common J2EE design and architecture-related questions with references to patterns or refactorings that provide solutions to these questions. Understanding the pattern relationships and the roadmap is key to using these patterns.
Chapter 6, "Presentation Tier Patterns" presents eight patterns that pertain to using servlets, JSP, JavaBeans, and custom tags to design web-based applications for the J2EE platform. The patterns describe numerous implementation strategies, and address common problems such as request handling, application partitioning, and generating composite displays.
Chapter 7, "Business Tier Patterns" presents nine patterns that pertain to using EJB technology to design business components for the J2EE platform. The patterns in this chapter provide the best practices for using the EJB and JMS technologies. Where relevant, these patterns include discussion on other technologies, such as JNDI and JDBC.
Chapter 8, "Integration Tier Patterns" presents four patterns that pertain to integrating J2EE applications with the resource tier and external systems. The patterns deal with using JDBC and JMS to enable integration between business tier and resource tier components.
Finally, the "Web Worker Micro-Architecture" discusses an advanced topic of using multiple patterns to solve a larger problem. It specifically discusses the Web Worker micro-architecture which illustrates how to combine multiple patterns to integrate a J2EE application and a workflow system.
I found this book very enlightening, although I would not say it is an easy read, since this is not an easy subject. Some things have changed since it was published back in 2003, primarily the advent of EJB 3.0 which changes the need for and structure of a few patterns. However, it is still a very good book on design and I would still highly recommend it for the experienced J2EE developer. The book's preface recommends it for managers too, but quite frankly unless the manager is well-versed in J2EE to begin with, I think it would just confuse him/her since the discussions and explanations can get quite technical.
Rating: - Bit outdated - Still A must have for a serious J2EE developer
Like everyone else has said, this is a great book. Even though a few of the patterns may be outdated after the advent of EJB-3, it still is an excellent book. I would say a must have ! First section (chapater 2, 3 and 4 ) talks about design considerations and J2EE refactoring and are very well explained. Section -II (J2EE pattern catalog) exemplifies core j2ee patterns with UML diagrams and code samples. The whole book is easy to read and understand. Unlike lot of other technology books, this book has a very long shelf life. You wiil be referring this book very often. Go ahead buy it.
Rating: - The Guru of patterns Revolution
It is a mandatory book for any J2EE developer. Dont even write a single line of J2EE code without reading this book.
Rating: - Can't put it down
This book is a good read. I simply cannot put it down, with clear explanations and with code to realize, its really good and it excites the developer's imagination.
As a foundation, all developers/designers should also get "Design Patterns" - Gang of Four and understand the material
Rating: - Useful and practical techniques for designing web solution
Concepts of Presentation, Business and Integration Tiers are nowadays so popular among all technical designs in framework and web architecture levels, upon the promotion of diversity of responsibilities, low coupling and high cohesion between each layers. This book would be the 'bible' of mastering such technology before ongoing development. Nevertheless, it's useful for implementing projects using any skillsets, even not related to Java. (e.g. C++, PHP).
|