Přehled témat a úkolů
PDF
Základní informace o obsahu přednášek, probíraných tématech a požadavcích na klasifikovaný zápočet.
Ukázka jednoduché třídy jako základní stavební jednotky objektového programu.
Modularita
PDF
Přehled a vývoj programovacích paradigmat se zaměřením na aspekty kvality a rozsah software.
Modularita jako vnitřní faktor kvality.
Jednoduchá třída s kompozicí a ukázkou použití zaměřenou na vznik a zánik objektů.
Třídy a objekty
PDF
Obecné charakteristiky objektově-orientovaného paradigmatu zaměřené
na objektový jazyk, podporu implementace a využívání knihoven.
Třída obsahující dynamické pole objektů jiné třídy, konstruktor a destruktor této třídy.
Návrh programu I
PDF
Návbrh objektového programu se třemi třídami a jednoduchými kompozicemi.
Rozbor úlohy a promítnutí návrhu do deklarace tříd.
Deklarace tříd bez definic, jejichž realizace se předpokládá v rámci samostatné práce.
Objektová dekompozice
Třída jako objekt
PDF
Vztah mezi funkční a objektovou dekompozicí programu, výhody použití objektové dekompozice.
Třída jako objekt a příklady jejího použití.
Implementace jednoduchých příkladů, ve kterých se třída chová jako objekt.
Úvod do dědičnosti
PDF
Důvody pro použití dědičnosti, rozšíření chování, zastupitelnost jako základní princip.
Jednoduchá úloha s rozdělením třídy na rodiče a potomka.
Reimplementace programu s využitím jednoduchého rozšíření v dědičnosti.
Dědičnost – změna chování
PDF
Změna chování třídy, rozdíl mezi přetížením a překrytím. Překrytí a substituční princip.
Využití "protected" při rozšíření implementace.
Reimplementace programu s využitím překrytí v dědičnosti.
Dědičnost - polymorfismus
PDF
Rozšíření třídy s využitím polymorfismu. Rozdíl mezi obyčejným překrytím a virtuální metodou.
Virtualita a substituční princip, nahrazení implementace
Reimplementace programu s využitím polymorfismu.
Abstraktní třida Vícenásobná dědičnost
PDF
Abstrakce jako základní nástroj pro dědičnost.
Čistě virtuální metoda, abstraktní a čistě abstraktní třída.
Vícenásobná dědičnost.
Reimplementace programu s využitím abstraktní a čistě abstraktní třídy.
Návrh programu II
PDF
Návrh objektového programu s využitím technik spojených s dědičností. Rozhodnutí kdy je a kdy není vhodné využít dědičnost.
Rozbor úlohy a promítnutí do kompozic a dědičných hierarchití tříd.
Generičnost
PDF
Generičnost jako nástroj využívající třídu (typ) jako parametr.
Generický parametr, generická třída, konkrétní třída dosazená za generický parametr.
Implementace jednoduchého programu s generičností.