6.Design Patterns
Software Architecture & Engineering · 12 notes
- Object-Oriented Design Patternshistorical
Reusable design structures and the trade-offs behind creational, structural, and behavioral patterns.
- Singleton Patternhistorical
A single shared instance, initialization safety, lifecycle, testability, and global-state trade-offs.
- Proxy Patternhistorical
Interposing an object to control or augment access to another object while preserving its contract.
- Template Method Patternhistorical
Fixing an algorithm skeleton while allowing selected steps to vary in subclasses or callbacks.
- Factory Method Patternhistorical
Separating object creation decisions from clients that consume the created abstraction.
- State Patternhistorical
Representing state-dependent behavior with explicit state objects instead of sprawling conditionals.
- Builder Patternhistorical
Constructing complex objects step by step with readable optional configuration and validation.
- Strategy Patternhistorical
Encapsulating interchangeable algorithms or policies behind a common contract.
- Observer Patternhistorical
Notifying registered observers about subject changes and managing coupling, ordering, and lifecycle.
- Decorator Patternhistorical
Adding composable behavior around an object without changing the wrapped implementation.
- Chain of Responsibilityhistorical
Passing a request through an ordered pipeline of handlers that may process, enrich, reject, or forward it.
- Adapter Patternhistorical
Translating one interface/protocol/data model into the contract expected by a client.