Docs
/
Design Patterns

Design Patterns — Learning Roadmap

A comprehensive guide to software design patterns, from SOLID principles to domain-driven design.


Topics

#TopicKey Concepts
01SOLID PrinciplesSingle Responsibility, Open-Closed, Liskov Substitution, Interface Segregation, Dependency Inversion
02Creational PatternsSingleton, Factory, Abstract Factory, Builder, Prototype
03Structural PatternsAdapter, Decorator, Facade, Proxy, Composite
04Behavioral PatternsObserver, Strategy, Command, Iterator, Chain of Responsibility
05Repository PatternData access abstraction, unit of work, query objects
06Service Layer PatternBusiness logic encapsulation, DTOs, transaction management
07MVC / MVP / MVVMModel-View-Controller, Model-View-Presenter, Model-View-ViewModel
08Event-Driven ArchitectureEvent bus, pub/sub, event sourcing basics, async communication
09CQRS & Event SourcingCommand Query Responsibility Segregation, event store, projections
10Dependency InjectionIoC containers, constructor injection, service locators, DI frameworks
11Clean ArchitectureDependency rule, use cases, entities, interface adapters
12Domain-Driven Design BasicsUbiquitous language, bounded contexts, aggregates, value objects

How to Use

  1. Start with SOLID Principles — the foundation of all good design
  2. Learn Creational, Structural, Behavioral patterns — the Gang of Four classics
  3. Study Repository & Service Layer — practical patterns for business apps
  4. Understand MVC/MVP/MVVM — UI architecture patterns
  5. Explore Event-Driven, CQRS, Event Sourcing — modern architectural patterns
  6. Master Dependency Injection & Clean Architecture — building maintainable systems
  7. Finish with Domain-Driven Design — modeling complex business domains