System design (HLD, LLD and architecture)
Design Patterns (GoF and modern)
The planned outline of 11 modules. Lessons are written, run and reviewed before they are published.
Before this track
Planned outline
- Module 1
Why patterns, and when not to use them
Coming soon - Module 2
Creational patterns: Factory Method to Singleton
Coming soon - Module 3
Structural patterns: Adapter to Proxy
Coming soon - Module 4
Behavioral patterns: algorithms and requests
Coming soon - Module 5
Behavioral patterns: state and communication
Coming soon - Module 6
Modern patterns for application code
Coming soon - Module 7
Modern patterns for resources, runtime and composition
Coming soon - Module 8
Resilience patterns as code
Coming soon - Module 9
Patterns in standard libraries
Coming soon - Module 10
Anti-patterns and refactoring to patterns
Coming soon - Module 11
Choosing patterns in design reviews and LLD rounds
Coming soon
Official documentation
- www.informit.com/store/design-patterns-elements-of-reusable-object-oriented-9780201633610 (informit.com)
- openjdk.org/jeps/441 (openjdk.org)
- docs.python.org/3/library/abc.html (docs.python.org)
- learn.microsoft.com/en-us/azure/architecture/patterns (learn.microsoft.com)
More in System design (HLD, LLD and architecture)
- System Design (High-Level Design) (coming soon)
- Low-Level Design (Object-Oriented Design) (coming soon)
- Concurrency & Multithreading (coming soon)
- API Design (REST, gRPC, GraphQL, Webhooks) (coming soon)
- All System design tracks
- How we make lessons