Middle
Co jsou návrhové vzory?
sobes.tech AI
Odpověď od AI
Vzorové (designové) vzory jsou typová, opakovaně ověřená řešení často se vyskytujících problémů návrhu v rámci objektově orientovaného programování. Nejedná se o hotové knihovny nebo frameworky, ale o koncepty nebo "recepty", které lze přizpůsobit konkrétnímu úkolu.
Vzorové vzory se zaměřují na vztahy mezi třídami a objekty. Dělí se do tří hlavních kategorií:
- Tvořivé (Creational): Vzory pro tvorbu objektů.
- Factory Method (Tovární metoda)
- Abstract Factory (Abstraktní továrna)
- Singleton
- Builder (Stavitel)
- Prototype (Prototyp)
- Strukturální (Structural): Vzory pro organizaci tříd a objektů do větších struktur.
- Adapter (Adaptér)
- Bridge (Most)
- Composite (Seskupení)
- Decorator (Dekorátor)
- Facade (Fasáda)
- Flyweight
- Proxy (Zástupce)
- Chování (Behavioral): Vzory pro algoritmy a způsoby interakce mezi třídami a objekty.
- Chain of Responsibility (Řetězec odpovědnosti)
- Command (Příkaz)
- Iterator (Iterátor)
- Mediator (Mediátor)
- Memento
- Observer (Pozorovatel)
- State (Stav)
- Strategy (Strategie)
- Template Method (Šablonová metoda)
- Visitor (Návštěvník)
Použití vzorů návrhu umožňuje vytvářet flexibilnější, rozšiřitelnější a lépe udržovatelný kód, zlepšuje jeho čitelnost a usnadňuje týmovou práci.
Například vzor Singleton zaručuje, že třída má pouze jednu instanci a poskytuje k ní globální přístupový bod.
// Příklad Singleton v Javě
class Singleton {
private static Singleton instance; // Jediná instance
private Singleton() {
// Soukromý konstruktor, aby se zabránilo vytváření nových instancí
}
public static Singleton getInstance() {
if (instance == null) { // Vytvoření instance při prvním volání
instance = new Singleton();
}
return instance; // Vrací jedinou instanci
}
public void showMessage() {
System.out.println("Ahoj ze Singletonu!");
}
}