Podrobné informace o školení Objektovými principy a návrhovými vzory řízený design
a vývoj kvalitních aplikací 1
Podívat se na hodnocení kurzu účastníky
Předpokládané znalosti účastníků
- Znalost alespoň jednoho z rodiny "C" jazyků (C#, Java, C++) – příklady na
školení jsou psány v jazyce C#.
- Částečná znalost UML = neutečete zděšeni z kurzu, když zobrazím diagram tříd.
- Nenávist ke kariéře zručného klikače a zaškrtávače ve vizuálních návrhářích a "wizardech",
co s velkou vášní vytváří jedno strhující uživatelské rozhraní pro číselníky za
druhým.
Program školení – 1. den
pan A. Roubíček, společnost ATLAS a. s. : Vzhledem k tomu, že
je školení velice přínosné, musím ho doporučit všem, kdož mají zájem navrhovat a
psát kvalitní objektové aplikace".
- Přivítání účastníků kurzu.
- Úvodní informace o zaměření a organizaci kurzu.
- Základní pojmy OOP a UML.
- Mýty o OOP a UML.
- Vysvětlení rozdílů mezi business analýzou, systémovým designem a implementací aplikace
na konkrétní platformě.
- Světlo v temnotách – Model Driven Architecture (MDA)
- Základní architektura a rozvrstvení aplikace.
- Statický pohled na systém – vytváříme základní diagram tříd a ověřujeme, že jsou
v něm zaneseny všechny informace, jež jsou nám známy z případů užití.
- Zvolení složitosti diagramu tříd. Potřebujeme vždy flexibilní doménový model?
- Zapouzdření objektů, polymorfismus, návrh metod.
- Důležitost principů kovariance a kontravariance.
- Různé typy soudržnosti metod.
- Rozhodnutí o typu viditelnosti u každého člena třídy.
- Jaké konstruktory by měl nabízet každý objekt z problémové domény? Jak určit vlastnosti
pouze pro čtení.
- Ověření bezpečného chování třídy vůči potenciálním klientům.
- Precizní definice vztahů mezi třídami. Asociace, kompozice, agregace, závislost,
realizace, generalizace.
- Vysvětlení rozdílů mezi abstraktní třídou a rozhraním (interface).
- Vztah mezi typem a podtypem.
- Rozpoznání primárního účelu (hlavního smyslu) třídy i jejich sekundárních odpovědností
vynucených vztahy s objekty z různých vrstev.
- Praktický příklad – ukázka implementace vzorových vztahů mezi objekty, perzistence
objektů z problémové domény a zobrazování dat (jazyk C#) .
- Separace kódu pro ukládání a obnovení objektů z perzistentního úložiště v samostatné
vrstvě.
- Jak zajistíme, že v paměti počítače existuje nanejvýš jedna instance objektu se
stejnou identitou.
- Ukázky různých způsobů mapování agregace, kompozice, generalizace a asociace do
databáze.
- Zajištění existence maximálně jedné instance objektu v systému.
- Efektivní ukládání a nahrávání kolekcí.
- Jak se slučuje objektový přístup a přímé použití DataSetu (recordsetu) v uživatelském
rozhraní?
- Odpovědi na dotazy frekventantů kurzu.
Program školení – 2. den
- Vysvětlení pojmu návrhový vzor.
- Kdy byste měli používat návrhové vzory?
- Základní vzory (GoF vzory)
- Vzory pro řízení vzniku objektů.
- Strukturální vzory.
- Vzory pro chování objektů.
- Začlenění návrhového vzoru do designu aplikace. Kreativní aplikace vzorů.
- Kompozice vzorů do vyšších sémantických celků.
- Příklady odvozených návrhových vzorů často používaných při designu informačního
systému.
- Kdy byste neměli používat návrhové vzory?
- Příklad – ukázky implementace složitějších vzorů (jazyk C#).
- Odpovědi na dotazy frekventantů kurzu.
Program školení – 3. den
- Typické problémy při modelování informačního systému a jejich řešení.
- Modelování složitých organizačních struktur.
- Výhody vytváření fasád (Facade) pro aplikace s více než jedním typem uživatelského
rozhraní (lehký klient, těžký klient).
- Evidence kompletní historie objektu.
- Aplikační role a práva uživatelů.
- Vytvoření flexibilního systému, jehož chování je změněno bez rekompilace aplikace.
- Příklad – ukázky řešení problémů při modelování informačního systému (jazyk C#).
- Odpovědi na dotazy frekventantů kurzu.
- Ukončení kurzu.
>>Chci se přihlásit na školení!
Potřebujete další informace? Napište
nám. Můžete se také podívat na často kladené dotazy ke kurzům.