Uživatelské nástroje

Nástroje pro tento web


informatika:maturita:19a

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revizePředchozí verze
informatika:maturita:19a [19. 02. 2026, 19.51] – Rozhraní? xwolf4informatika:maturita:19a [22. 02. 2026, 14.12] (aktuální) xwolf4
Řádek 95: Řádek 95:
  
 Obdobně může abstraktní třída předepisovat doimplementování metod, pro které ona sama nemá vlastní kód, ale jen předpis abstraktní metody. Obdobně může abstraktní třída předepisovat doimplementování metod, pro které ona sama nemá vlastní kód, ale jen předpis abstraktní metody.
 +
 +===== Design patterns (návrhové vzory) =====
 +Navrhují konkrétní způsoby řešení častých problémů v OOP. Tyto způsoby byly poprvé popsány v knize [[https://en.wikipedia.org/wiki/Design_Patterns#Patterns_by_type|Design Patterns]] v roce 1994.
 +
 +Výhody:
 +  * rychlost implementace (Nemusím vymyslet způsob řešení problému.)
 +  * komunikace v týmu (Kolega rychle pochopí, protože taky dobře zná tyto návrhové vzory-)
 +  * údržba kódu (Tyto vzory vytváří tzv. "loose coupling". To znamená, že můžu nahradit jednu část systému, aniž bych rozbil všechno ostatní.)
 +Nevýhody:
 +  * Často vedou ke příliš komplikovanému kódu, protože byly použity, aniž by byly potřeba.
 +
 +Tady je seznam nejdůležitějších z každé kategorie:
 +==== Creational ====
 +Nabízí alternativní způsoby vytvoření objektů.
 +  * [[https://en.wikipedia.org/wiki/Builder_pattern|Builder]]
 +  * [[https://en.wikipedia.org/wiki/Singleton_pattern|Singleton]]
 +==== Structural ====
 +Vysvětlují, jak uspořádat objekty do větších struktur.
 +  * [[https://en.wikipedia.org/wiki/Adapter_pattern|Adapter]]
 +  * [[https://en.wikipedia.org/wiki/Decorator_pattern|Decorator]]
 +==== Behavioral ====
 +Vysvětlují komunikaci mezi objekty.
 +  * [[https://en.wikipedia.org/wiki/Iterator|Iterator]]
 +  * [[https://en.wikipedia.org/wiki/Observer_pattern|Observer]]
 +
informatika/maturita/19a.txt · Poslední úprava: autor: xwolf4

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki