Should we use all of these?
Pattern catalogs are available to deal with various concerns of software development, be it design, architecture, security, data, and so on. Most applications, or even frameworks, leverage only a fraction of the patterns listed earlier. Understanding the pattern catalogs and their applicability is a rich source of design ideas for any software developer. A developer should be careful to avoid the malady of so-called pattern diarrhoea.
Sr. no |
Pattern catalog |
Primary use-case |
1 |
GoF patterns |
These are fundamental patterns which occur time and again, regardless of the domain. These are used in a context agnostic manner. |
2 |
POSA catalog |
The areas where these patterns are relevant include concurrency management, distributed programming, middleware software, and so on. |
3 |
POEAA catalog |
Enterprise web application development using .NET and JEE platforms. |
4 |
EIP |
Application integration in modern enterprises. |
5 |
J2EE design patterns |
Writing web applications using .NET and Java. |
6 |
DDD |
In fact, this book is a framework for developing rich domain models in a persistent ignorant manner. |
7 |
Arlow/Nuestadt |
Very useful when we are writing enterprise applications, and no need to break one's head to create the database schema. Most of the entities are available here as a business archetype. |