Detail předmětu

Algoritmizace a programovací techniky

FSI-DPT-K Ak. rok: 2019/2020 Letní semestr

Jsou prezentovány vybrané konstrukce objektově orientovaného programování a demonstrovány zásady tvorby programů. Poznatky jsou uváděny do souvislostí s metodologií systematického návrhu programu.

Jazyk výuky

čeština

Počet kreditů

5

Výsledky učení předmětu

Studenti získají znalost metodiky tvorby programů užitím objektově orientovaného
programování a osvojí si schopnost řešit problémy s pomocí objektových technologií.

Prerekvizity

Předpokládá se obvyklá středoškolská počítačová gramotnost.

Plánované vzdělávací činnosti a výukové metody

Předmět je vyučován formou přednášek, které mají charakter výkladu základních principů a teorie dané disciplíny. Cvičení je zaměřeno na praktické zvládnutí látky probrané na přednáškách.

Způsob a kritéria hodnocení

Požadavky pro udělení zápočtu: aktivní účast na cvičeních a samostatné zpracování projektu zadaného vyučujícím. Zkouška sestává z písemné a ústní části. Písemnou část představuje test se čtyřmi otázkami. Ústní část se skládá z diskuse nad písemnou částí s možnými doplňujícími otázkami. Klasifikace je plně v kompetenci vyučujícího podle platných směrnic VUT v Brně.

Učební cíle

Seznámení s objektově orientovanou metodikou práce s počítačem. Rozvoj algoritmického myšlení a strukturovaného přístupu k řešení problémů. Rozvoj počítačové kreativity posluchačů.

Vymezení kontrolované výuky a způsob jejího provádění a formy nahrazování zameškané výuky

Účast na přednáškách je žádoucí, na cvičeních povinná. Výuka běží podle týdenních plánů. Způsob nahrazení zameškaných cvičení je plně v kompetenci vyučujícího.

Použití předmětu ve studijních plánech

Typ (způsob) výuky

 

Konzultace v kombinovaném studiu

17 hod., nepovinná

Vyučující / Lektor

Osnova

1. Úvod: motivace a principy objektově orientovaného programování.
2. Proměnné a řídicí struktury, minimum o zapouzdření.
3. Dynamické pole, práce s dynamickým polem.
4. Cykly detailněji, invariant cyklu.
5. Zapouzdření a návrh shora dolů.
6. Statické metody, bezpečný kód, výjimky a chráněné bloky.
7. Dědičnost, kompatibilita tříd a návrh shora dolů.
8. Polymorfismus, delegát a návrh shora dolů.
9. Rekurze, implementace, příklady využití.
10. Operace s textovými soubory, vytváření, čtení a zápis.
11. Základy práce s grafikou, bitmapa, grafický kontext zařízení.
12. Využití systémových informací, časovač, idea více vláknových aplikací.
13. Dijkstrův návrh ve vrstvách.