Návrhové vzory jsou standardizovaným řešením pro typické situace v objektově orientovaném návrhu. Pomáhají vývojářům psát kód, který je srozumitelný, snadno testovatelný a především udržitelný.
Tento koncept zpopularizovala v roce 1994 kniha skupiny autorů známé jako „Gang of Four“ (GoF).
Návrhové vzory se tradičně dělí do tří základních kategorií podle jejich účelu:
Řeší mechanismy vytváření objektů. Cílem je oddělit proces tvorby objektu od systému, který ho používá.
Zabývají se tím, jak se třídy a objekty skládají do větších struktur.
Zaměřují se na komunikaci mezi objekty a rozdělení zodpovědnosti.
—
Singleton je jeden z nejznámějších (a někdy nadužívaných) vzorů. Používá se například pro správce konfigurace nebo připojení k databázi.
Klíčové vlastnosti:
—
Tento vzor je základem pro asynchronní systémy a uživatelská rozhraní (GUI).
—
| Výhody | Nevýhody |
|---|---|
| Srozumitelnost: Vývojáři používají společný „jazyk“ (např. „Tady použijeme Fasádu“). | Překombinovanost: Použití složitého vzoru na jednoduchý problém (Overengineering). |
| Osvědčená praxe: Řešení eliminují chyby, které už někdo udělal před vámi. | Učební křivka: Správné pochopení a implementace vyžaduje zkušenost. |
| Snadná údržba: Vzory podporují principy SOLID. |
—
Návrhové vzory nejsou totéž co architektonické vzory (např. MVC – Model-View-Controller). Architektonické vzory mají globální dopad na celou aplikaci, zatímco návrhové vzory řeší konkrétní problémy v rámci struktury tříd.
Související články:
Tagy: programming software-engineering design-patterns oop architecture