Skip to content

Latest commit

 

History

History
149 lines (138 loc) · 4.16 KB

README.md

File metadata and controls

149 lines (138 loc) · 4.16 KB

Design Patterns Training

A comprehensive implementation guide teaching software design patterns, SOLID principles, and best practices.

Level 0 - Creational Patterns

  • Implement Factory Pattern
    • Concrete Factory
    • Product creation
    • Client usage
  • Add Abstract Factory
    • Product families
    • Concrete factories
    • Abstract interfaces
  • Create Builder Pattern
    • Director
    • Concrete builders
    • Product construction
  • Add Factory Method
    • Creator classes
    • Product hierarchy
    • Method overriding
  • Implement Prototype
    • Cloning mechanism
    • Deep/shallow copies
    • Registry support
  • Create Singleton
    • Thread safety
    • Lazy loading
    • Instance control

Level 1 - Structural Patterns

  • Add Adapter Pattern
    • Class adaptation
    • Object adaptation
    • Interface bridging
  • Implement Bridge
    • Abstraction
    • Implementation
    • Decoupling
  • Create Composite
    • Component interface
    • Leaf objects
    • Composite objects
  • Add Decorator
    • Component wrapping
    • Dynamic behavior
    • Responsibility chain
  • Implement Facade
    • Subsystem simplification
    • Interface unification
    • Client abstraction
  • Create Flyweight
    • State sharing
    • Factory management
    • Context handling
  • Add Proxy
    • Access control
    • Lazy loading
    • Resource management

Level 2 - Behavioral Patterns

  • Implement Chain of Responsibility
    • Handler chain
    • Request processing
    • Dynamic chain
  • Add Command
    • Command objects
    • Command queue
    • Undo/redo
  • Create Interpreter
    • Grammar rules
    • Expression parsing
    • Context handling
  • Add Iterator
    • Collection traversal
    • Access patterns
    • Iterator types
  • Implement Mediator
    • Colleague communication
    • Event handling
    • Decoupling
  • Create Memento
    • State capture
    • History management
    • Restoration
  • Add Observer
    • Event notification
    • Subject-observer
    • Change propagation
  • Implement State
    • State transitions
    • Context handling
    • Behavior encapsulation
  • Create Strategy
    • Algorithm family
    • Context switching
    • Behavior encapsulation
  • Add Template Method
    • Algorithm skeleton
    • Hook methods
    • Implementation variation
  • Implement Visitor
    • Element traversal
    • Operation addition
    • Double dispatch

Level 3 - Pattern Combinations

  • Create composite patterns
  • Add pattern variations
  • Implement anti-patterns
  • Create design exercises
  • Add pattern catalogs

Level 4 - Best Practices

  • Add SOLID principles
  • Create design guidelines
  • Implement code reviews
  • Add testing strategies
  • Create documentation

Level 5 - Advanced Topics

  • Add architectural patterns
  • Create enterprise patterns
  • Implement cloud patterns
  • Add concurrent patterns
  • Create reactive patterns

Implementation Languages

  • C#
  • Java
  • Python
  • TypeScript
  • Go
  • Rust

Pattern Categories

  • Creational Patterns
  • Structural Patterns
  • Behavioral Patterns
  • Architectural Patterns
  • Enterprise Patterns
  • Cloud Patterns

Literature

  • Gamma1995 Design Patterns - Elements of Reuseable Object-Oriented Software
  • Geirhos2015 Entwurfsmuster - das umfassende Buch
  • Freeman2020 Head First, Design Patterns - Building Extensible & Maintainable Object-Oriented Software, Second Edition
  • wikipedia