DesignPatterns Hub
The design-patterns vocabulary is a shared language for naming common solutions to common problems. The cluster covers patterns that actually appear in modern codebases — not the full Gang of Four catalog, but the subset that earns its place when the right problem appears.
The honest assessment of design patterns: most of the value is in the *vocabulary* (giving teams a shared name for a structure they would have invented anyway), not in the patterns being inherently novel.
Creational
- [BuilderPatternAndFluentApis](BuilderPatternAndFluentApis) — Constructor sprawl and the fluent-API solution
- [FactoryPattern](FactoryPattern) — Factories, abstract factories, when each is right
- [Dependency Injection Patterns](DependencyInjectionPatterns) — Decoupling components through inversion of control
Behavioral
- [StateMachinePattern](StateMachinePattern) — Finite state machines in code, the cases where they help
- [SpecificationPattern](SpecificationPattern) — Composable predicates, query objects
Structural
- [RepositoryPattern](RepositoryPattern) — Aggregate access, the case for and against repositories
Adjacent clusters
- [Software Engineering Practices Hub](SoftwareEngineeringPracticesHub) — Practices that complement patterns
- [Java Hub](JavaHub) — Java-specific applications