J2EE Design Patterns

J2EE Design Patterns

by William Crawford, Jonathan Kaplan


View All Available Formats & Editions
Members save with free shipping everyday! 
See details


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.

Product Details

ISBN-13: 9780596004279
Publisher: O'Reilly Media, Incorporated
Publication date: 10/01/2003
Pages: 370
Product dimensions: 7.00(w) x 9.19(h) x 0.92(d)

About the Author

William Crawford has been developing web-based enterprise applications since 1995, including one of the first web-based electronic medical record systems (at Children's Hospital in Boston) and some of the first enterprise-level uses of Java. He has consulted for a variety of institutional clients, including Boston Children's Hospital, Harvard Medical Center, numerous startups and several Fortune 500 companies. Prior to an acquisition he was CTO of Invantage, Incorporated in Cambridge, MA. He received a degree in history and economics from Yale University. He is the co-author of Java Servlet Programming, 2nd Edition, Java Enterprise in a Nutshell, 2nd Edition, and two forthcoming O'Reilly titles. Will is currently Principal Software Architect at Perceptive Informatics, Inc.Massachusetts, provider of software and services to the pharmaceutical industry. He can be reached at http://www.williamcrawford.info

Jonathan Kaplan has been a software developer at Sun Microsystems since 1997. Before joining Sun, he worked on a web-based electronic records system at the Children's Hospital in Boston. At Sun, he has focused on system management, including early Java and browser based applications. Jonathan received his Bachelor's and Master's degrees in Computer and Information Science from the University of Pennsylvania. He currently lives with his wife Tracy in Cambridge, Massachusetts.

Table of Contents

  • Preface
  • Chapter 1: Java Enterprise Design
  • Chapter 2: The Unified Modeling Language
  • Chapter 3: Presentation Tier Architecture
  • Chapter 4: Advanced Presentation Tier Design
  • Chapter 5: Presentation Tier Scalability
  • Chapter 6: The Business Tier
  • Chapter 7: Tier Communications
  • Chapter 8: Database and Data Patterns
  • Chapter 9: Business Tier Interfaces
  • Chapter 10: Enterprise Concurrency
  • Chapter 11: Messaging
  • Chapter 12: J2EE Antipatterns
  • Appendix A: Presentation Tier Patterns
  • Appendix B: Business Tier Patterns
  • Appendix C: Messaging Patterns
  • Appendix D: J2EE Antipatterns
  • Colophon

Customer Reviews