Vítejte na webových stránkách o návrhových vzorech v JavaScriptu. Dozvíte se tu o různých návrhových vzorech, které můžete použít při psaní svého vlastního kódu. Nachází se zde tutoriál, ve kterém se na začátku dozvíte o různých návrhových principech, tedy o pravidlech, které nám pomáhají lépe navrhovat software, a v dalších jeho částech se můžete podívat na konkrétní návrhové vzory. Možná bych to spíš nazval jako přehled návrhových vzorů než tutoriál. V každé části vždy jen najdete k čemu konkrétní návrhový vzor slouží, proč jej použít a příklad použití, žádné velké množství textu nečekejte.
Tutoriál je rozdělen do 4 sekcí. První sekce se věnuje návrhovým principům a zbývající tři obsahují jednotlivé návrhové vzory. V tutoriálu jsou vysvětleny Gang of Four (GoF) návrhové vzory. GoF návrhové vzory jsou nejznámější skupinou návrhových vzorů, které byly popularizovány knihou napsanou v roce 1994 skupinou čtyř lidí: Erich Gamma, Richard Helm, Ralph Johnson a John Vlissides. Dělí se do tří kategorií: vytvářející, strukturální a behaviorální. Pro každou tuto kategorii je v tutoriálu vyhrazena jedna sekce. Kromě GoF návrhových vzorů jsem se do tutoriálu rozhodl přidat ještě Object Pool, který jsem zařadil do vytvářejících návrhových vzorů. Používal jsem jej totiž ještě předtím, než jsem se o návrhových vzorech začal učit, a můžu říct, že dokáže být v některých případech hodně užitečný. Návrhové vzory jsou v jednotlivých sekcích tutoriálu seřazeny podle abecedy a v podstatě je jedno o kterém si chcete přečíst jako první. Určitě ale doporučuji si nejdříve přečíst část o návrhových principech.
Tyto webové stránky jsem se rozhodl vytvořit proto, abych si předělal do čtivé podoby své poznámky, které jsem si dělal když jsem na udemy.com sledoval kurz o návrhových vzorech v JavaScriptu. Na konci kurzu jsem totiž skončil s textovým souborem a hromadou souborů s okomentovaným kódem. Chtěl jsem si to tedy nějakým způsobem sjednodit a vytvořit si přehled v podobě webových stránek. Kromě toho jsem si také chtěl zopakovat co jsem se v kurzu naučil.