Difference between revisions of "Pomůcky OO"
m (→CRC karty) |
m (→Vybrané návrhové vzory) |
||
Line 25: | Line 25: | ||
==Vybrané návrhové vzory== | ==Vybrané návrhové vzory== | ||
− | [http://en.wikipedia.org/wiki/Composite_pattern Kompozit] | + | [http://en.wikipedia.org/wiki/Composite_pattern Kompozit] |
+ | |||
+ | Souborový systém si můžeme představit jako strukturu, skládající se ze dvou typů prvků (Component): | ||
+ | * soubor (Leaf) | ||
+ | * adresář (Composite) | ||
+ | Promyslete, co znamenají vztahy tohoto návrhového vzoru v konkrétním uplatnění pro File System. | ||
+ | |||
[http://en.wikipedia.org/wiki/Observer_pattern Pozorovatel] | [http://en.wikipedia.org/wiki/Observer_pattern Pozorovatel] | ||
+ | |||
+ | Chcete se dozvědět, že již mají v e-shopu nový díl Vaší oblíbené série? Pak byste se mohli zaregistrovat a nechat si poslat upozorňující e-mail. Obchod (Subject) požádáte o registraci (registerObserver(mujEmail)). Obchod po naskladnění nového dílu zašle všem zaregistrovaným hlášku (notifyObservers) o možném nákupu. | ||
+ | |||
+ | Případně můžete nad jednou kolekcí dat (Subject) publikovat dva typy výstupů - tabulku (ConcreteObserverA) a graf (ConcreteObserverB). V okamžiku, kdy se data změní, překreslí se tabulkový i grafický výstup. | ||
==Přehledové karty UML prvků== | ==Přehledové karty UML prvků== |
Revision as of 11:28, 4 February 2015
Projekt ECP
Materiály poskytnuté J. Arlowem pro postup při zpracování příkladu elektronického obchodu: Workbook
CRC karty
Metoda brainstormingu s kartičkami CRC. Na každé kartičce bude uvedeno:
- jméno třídy
- zodpovědnost třídy
- s kým třída spolupracuje
Otázky pomáhající při hledání tříd a jejich zodpovědností. U zodpovědnosti třídy rozlišujte dvojí:
znalost zná soukromá data? ví o souvisejících objektech? zná, jak odvodit, vypočítat hodnoty atributů?
operace co objekt dělá sám o/v sobě? přenáší akci na jiný objekt? koordinuje jiné objekty?
Vybrané návrhové vzory
Souborový systém si můžeme představit jako strukturu, skládající se ze dvou typů prvků (Component):
- soubor (Leaf)
- adresář (Composite)
Promyslete, co znamenají vztahy tohoto návrhového vzoru v konkrétním uplatnění pro File System.
Chcete se dozvědět, že již mají v e-shopu nový díl Vaší oblíbené série? Pak byste se mohli zaregistrovat a nechat si poslat upozorňující e-mail. Obchod (Subject) požádáte o registraci (registerObserver(mujEmail)). Obchod po naskladnění nového dílu zašle všem zaregistrovaným hlášku (notifyObservers) o možném nákupu.
Případně můžete nad jednou kolekcí dat (Subject) publikovat dva typy výstupů - tabulku (ConcreteObserverA) a graf (ConcreteObserverB). V okamžiku, kdy se data změní, překreslí se tabulkový i grafický výstup.