Programovací techniky
Kód | Zakončení | Kredity | Rozsah | Jazyk výuky |
---|---|---|---|---|
XD33PTE | Z,ZK | 4 | 14+6s | česky |
- Přednášející:
- Cvičící:
- Předmět zajišťuje:
- katedra kybernetiky
- Anotace:
-
Předmět Programovací techniky má dva základní cíle: (a) rozbor některých často používaných algoritmů a jejich složitostní analýzu a (b) prezentaci základů softwarového inženýrství jako nástroje pro řízení vývoje složitých počítačových aplikací. Představuje pohled na tvorbu softwaru jako na složitý proces s potřebou systematického přístupu. Zvláštní důraz je kladen na objektově-orientovanou analýzu systémů pro rozsáhlé aplikace.
- Požadavky:
-
Podmínkou udělení zápočtu je vypracování a obhájení úloh.
- Osnova přednášek:
-
1. Úvod do problematiky, vývoj a přehled programovacích technik
2. Základy teorie složitosti, polynomiální a nepolynomiální problémy
3. Rekurzivní programování, rekurzivní a reentrantní moduly
4. Datové struktury, jejich implementace a alokace paměti v operačních systémech
5. Metadata a XML - základní koncepty a pravidla
6. Algoritmy řazení, třídění a vyhledávání. Nepřímé vyhledávání, indexace
7. Paralelní/pseudoparalelní procesy a jejich spolupráce, synchronizace, sdílení prostředků. Paralelní programování
8. Základy softwarového inženýrství, softwarová „fyzika“
9. Specifikace požadavků na software, typy specifikací
10. Strukturovaná analýza systému
11. Objektově orientovaná analýza systému
12. Architektury softwarových aplikací, distribuované a multiagentní systémy
13. Dekompozice rozsáhlých softwarových aplikací
14. Vývoj a metodika řízení komplexních softwarových projektů
- Osnova cvičení:
-
1. Úvod k úlohám samostatně řešeným v pracovních skupinách
2. Zadání úloh prvního okruhu (úlohy řazení a jejich složitost)
3. Samostatné řešení úloh prvního okruhu (1)
4. Samostatné řešení úloh prvního okruhu (2)
5. Prezentace a oponentura výsledků prvního okruhu
6. Zadání úloh druhého okruhu (úlohy paralelního programování)
7. Samostatné řešení úloh druhého okruhu (1)
8. Samostatné řešení úloh druhého okruhu (2)
9. Prezentace a oponentura výsledků druhého okruhu
10. Zadání úloh třetího okruhu (úlohy analýzy systémů)
11. Samostatné řešení úloh třetího okruhu (1)
12. Samostatné řešení úloh třetího okruhu (2)
13. Prezentace a oponentura výsledků třetího okruhu
14. Demonstrace distribuovaného multiagentního systému
- Cíle studia:
- Studijní materiály:
-
[1] Wirth, N.: Algorithm + Data Structures = Program. Prentice-Hall, New Jersey, 1975
[2] Louden, Kenneth, C.: Programming Languages. Principles and Practice. PWS-Kent, Massachusetts, 1993
[3] Jalote, Pankaj: An Integrated Approach to Software Engineering. Springer-Verlag, New York, 1997
- Poznámka:
- Další informace:
- Pro tento předmět se rozvrh nepřipravuje
- Předmět je součástí následujících studijních plánů:
-
- Kybernetika a měření- strukturované studium (povinně volitelný předmět)