Návrhové vzory

ChatGPT

Vygenerováno pomocí ChatGPT

Návrhové vzory (design patterns) jsou osvědčené postupy pro řešení opakujících se problémů v softwarovém vývoji. Pomáhají organizovat kód, usnadňují jeho údržbu a rozšiřitelnost a přispívají k lepšímu oddělení odpovědností v aplikaci. V případě návrhových vzorů Front Controller, MVC (Model-View-Controller), MVP (Model-View-Presenter) a MVVM (Model-View-ViewModel) se jedná o architektonické vzory, které se používají především při návrhu uživatelského rozhraní a interakce mezi různými částmi aplikace.
Pasted image 20240901143357.png

1. Front Controller

Front Controller je návrhový vzor, který se používá především v kontextu webových aplikací. Cílem tohoto vzoru je centralizovat všechny příchozí požadavky do jedné vstupní brány, která se nazývá Front Controller. Tento vzor umožňuje lepší řízení toku požadavků a odpovědí, centralizované zpracování autentizace, autorizace, správy session, logování a dalších úkolů.

Hlavní charakteristiky:

2. MVC (Model-View-Controller)

MVC (Model-View-Controller) je velmi rozšířený architektonický vzor, který se používá jak pro webové aplikace, tak pro desktopové aplikace. Tento vzor rozděluje aplikaci na tři hlavní komponenty:

Hlavní charakteristiky:

3. MVP (Model-View-Presenter)

MVP (Model-View-Presenter) je varianta vzoru MVC, která se často používá v desktopových aplikacích a některých webových aplikacích. Stejně jako u MVC, MVP rozděluje aplikaci na tři části, ale s několika klíčovými rozdíly:

Hlavní charakteristiky:

4. MVVM (Model-View-ViewModel)

MVVM (Model-View-ViewModel) je další architektonický vzor, který se často používá v kontextu aplikací s bohatým uživatelským rozhraním, jako jsou aplikace v technologii WPF, Silverlight, nebo moderní webové frameworky jako Angular nebo React. Tento vzor je evolucí MVP a přidává novou komponentu: ViewModel.

Hlavní charakteristiky: