When promoting a Unified Pattern Language organize patterns into collections.
This minimal collection documents Java server-side class patterns gleaned during a decade of hands-on experience within a company containing hundreds of Java production applications.
Code authors enhancing global pattern readability (source scanning) can use a class name suffix. Although classes are named using a variety of languages (including English); a consistent pattern suffix enhances architectural and design clarity for the reader.
public class MyCarefullyNamedIC extends OurBaseIC {
Layer-Specific Patterns (4) |
Unrestricted Patterns (6) |
Inbound/Outbound Layer | |
I/O Controller (IC) | Exception (Exception) |
Business Layer | Helper (Helper) |
Business Facade (BF) | Parameter Object (PO) |
Integration Layer | Test Rule (Rule) |
Resource Manager (RM) | Test with JUnit (Test) |
Shareable Layer | Transfer Object (TO) |
Domain Entity (DE) |