Návrhové vzory jsou znovu použitelná, prověřená řešení běžných problémů softwarového designu — obecné šablony pro strukturování kódu k řešení opakujících se výzev. Poskytují sdílenou slovní zásobu a prověřené postupy, které pomáhají psát lepší, lépe udržovatelný kód.
Co jsou návrhové vzory
DESIGN PATTERNS = proven, reusable solutions to RECURRING design problems:
→ not code to copy, but TEMPLATES/approaches for structuring code
→ distilled from experience (best practices for common situations)
→ e.g. "how do I ensure only one instance of a class?" → Singleton pattern
→ describe the PROBLEM, the SOLUTION structure, and the trade-offs
Klasické kategorie (Gang of Four)
CREATIONAL → how OBJECTS are created (Singleton, Factory, Builder, Prototype)
STRUCTURAL → how objects/classes are COMPOSED (Adapter, Decorator, Facade, Proxy, Composite)
BEHAVIORAL → how objects INTERACT/communicate (Observer, Strategy, Command, Iterator, State)
→ the famous "GoF" (Gang of Four) patterns; many others exist too
