Programovací techniky (FSI-DPT-A)

Akademický rok 2017/2018
Garant: doc. Ing. Stanislav Věchet, Ph.D.  
Garantující pracoviště: ÚAI všechny předměty garantované tímto pracovištěm
Jazyk výuky: angličtina
Cíle předmětu:
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čů.
Výstupy studia a kompetence:
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.
Obsah předmětu (anotace):
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.
Metody vyučování:
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ě.
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.
Typ (způsob) výuky:
    Přednáška  13 × 2 hod. nepovinná                  
    Cvičení s poč. podporou  13 × 2 hod. povinná                  
Osnova:
    Přednáška 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.
    Cvičení s poč. podporou 1. Seznámení s vývojovým prostředím MVS 2008.
2. Definice třídy, řídicí struktury.
3. Použití dynamického pole.
4. Návrh invariantu cyklu.
5. Použití získaných poznatků, návrh shora dolů.
6. Použití statických metod, chráněných bloků.
7. Použití dědičnosti, kompatibility tříd, návrh shora dolů.
8. Použití polymorfismu a delegáta, návrh shora dolů.
9. Použití rekurze.
10. Operace s textovymi soubory.
11. Grafický výstup aplikace, práce s bitmapou.
12. Využití interního timeru.
13. Zápočet.

Cvičení probíhají formou rozvíjení typových příkladů.
Literatura - základní:
1. Sharp J.: Microsoft Visual C# 2008 Krok za krokem
2. Cantú, M.: Mistrovství v Delphi 6.,7.
Literatura - doporučená:
1. Cantú, M.: Mistrovství v Delphi 6.,7.
Zařazení předmětu ve studijních programech:
Program Forma Obor Spec. Typ ukončení   Kredity     Povinnost     St.     Roč.     Semestr  
B3A-A prezenční studium B-MAI Matematické inženýrství -- zá,zk 5 Povinný 1 1 L