Design Patterns
Java developers should be familiar with design patterns. They provide proven solutions to common problems and incorporating them into your Java designs will result in more reliable and scalable applications.
A pattern describes a proven solution to a recurring design problem, placing particular emphasis on the context and forces surrounding the problem, and the consequences and impact of the solution.
Core J2EE Pattern Catalog – This site lists patterns useful in web applications that can be applied to the presentation, business and persistence tiers.
Object Oriented Design – This site provides a comprehensive list of common design patterns that can be applied to a wide variety of Java applications. Because it offers more detail about each pattern along with advice about their use, this site is probably the best compared to the others presented here.
Catalog of Patterns of Enterprise Application Architecture by Martin Fowler. – This site is designed to promote the book, “Patterns of Enterprise Application Architecture” and presents an overview of the patterns it contains.
I’ve been fortunate enough to have some excellent contributors to this book, most notably Dave Rice – who wrote a good tenth of it. Also joining in are Matt Foemmel, Edward Hieatt, Robert Mee, and Randy Stafford
I wrote this book in the early noughties, but my colleagues and I find the patterns are still relevant today. Our hypothesis then was that the essential problems and solutions in software architecture don’t really change that much – that certainly has been true for the last decade.
Another change since I wrote the book is that many patterns are now implemented by common frameworks (particularly with database interaction). This doesn’t mean that developers no longer need to understand this material. Frameworks still require you to make decisions about how to use them, and knowing the underlying patterns is essential if you are to make wise choices.
Leave a Reply
You must be logged in to post a comment.