Vyučující
|
-
Cmorej Vlastimil, Ing. Ph.D.
-
Rejšek Václav, Ing.
|
Obsah předmětu
|
1. Vývoj programovacích jazyků, typické vlastností. Programovací paradigmata, prostředky popisu syntaxe a sémantiky. 2. Principy a problémy programování paralelních aktivit. Jazykové konstrukce Javy pro paralelní výpočty. 3. Synchronizace vláken, monitory. 4. Konstrukce knihovny java.util.concurrent. 5. Skriptovací jazyky, úvod do jazyka Python. 6. Prostředky Pythonu pro práci se soubory. 7. Prostředky Pythonu pro práci s XML a DB-API. 8. Logické programování, Prolog. 9. Principy funkcionálního programování. 10. Programovací jazyk Lisp. 11. Porovnání typových systémů, příkazů a podprogramů moderních programovacích jazyků. 12. Porovnání objektově-orientovaných konstrukcí jazyků C, Python a Java. 13. Principy překladu programových struktur.
|
Studijní aktivity a metody výuky
|
Přednáška s praktickými aplikacemi, Studium metodou řešení problémů
- Projekt individuální [40]
- 40 hodin za semestr
- Kontaktní výuka
- 65 hodin za semestr
- Příprava na zkoušku [10-60]
- 50 hodin za semestr
- Příprava na dílčí test [2-10]
- 20 hodin za semestr
|
Předpoklady |
---|
Odborné znalosti |
---|
využívat teoretické poznatky z datových struktur |
využívat teoretické poznatky z diskrétní matematiky |
prokázat znalosti základních pojmů a metod z matematiky, pravděpodobnosti a statistiky |
rozumět principům objektově orientovaného programování v jazyce Java |
Odborné dovednosti |
---|
správně rozhodnout, kdy použít jakou datovou strukturu |
na základní uživatelské úrovni používat některé z běžných vývojových prostředí Javy |
sekvenčně programovat v jazyce Java |
popsat algoritmy složitější matematické výpočty |
Obecné způsobilosti |
---|
bc. studium: své učení a pracovní činnost si sám plánuje a organizuje, |
bc. studium: uplatňuje při řešení problémů vhodné metody a dříve získané vědomosti a dovednosti, kromě analytického a kritického myšlení využívá i myšlení tvořivé s použitím představivosti a intuice, |
bc. studium: rozpozná problém, objasní jeho podstatu, rozčlení ho na části, |
Výsledky učení |
---|
Odborné znalosti |
---|
charakterizovat principy a výhody či nevýhody programování v různých paradigmatech |
rozumět možnostem tvorby paralelního programu v jazyce Java |
rozumět problémům, které v paralelním programu mohou vzniknout |
popsat základní konstrukce pro skriptovací, logické a funkcionální jazyky |
Odborné dovednosti |
---|
napsat jednoduchý vícevláknový program v jazyce Java |
řešit typické problémy při psaní paralelního programu |
napsat jednoduché programy ve skriptovacím jazyce, v logickém jazyce a ve funkcionálním jazyce |
vybrat vhodný jazyk pro řešení zadaného problému |
Obecné způsobilosti |
---|
bc. studium: samostatně získávají další odborné znalosti, dovednosti a způsobilosti na základě především praktické zkušenosti a jejího vyhodnocení, ale také samostatným studiem teoretických poznatků oboru, |
bc. studium: používají své odborné znalosti, odborné dovednosti a obecné způsobilosti alespoň v jednom cizím jazyce, |
Vyučovací metody |
---|
Odborné znalosti |
---|
Přednáška s aktivizací studentů, |
Cvičení (praktické činnosti), |
Samostatná práce studentů, |
Hodnotící metody |
---|
Písemná zkouška, |
Demonstrace dovedností (praktická činnost), |
Doporučená literatura
|
-
Bieliková, Mária; Návrat, Pavol. Funkcionálne a logické programovanie. Slovenská technická univerzita, 2009. ISBN 978/80/227/3225-3.
-
Harms D., McDonald K. Začínáme programovat v jazyce Python. Computer Press, 2008.
-
Herout, Pavel. Java a XML. České Budějovice, 2007. ISBN 978-80-7232-307-4.
-
Pilgrim, Mark. Ponořme se do Python(u) 3. Edice CZ.NIC, 2010. ISBN 978-80-904248-2-1.
-
Scott, Michael L. Programming Language Pragmatics. Morgan Kaufmann, 2009. ISBN 9780123745149.
-
Sebesta, Robert W. Concepts of Programming Languages. 10. vydání. Addison Wesley, 2012. ISBN 978-0-13-139531-2.
-
Siebel, Peter. Practical Common Lisp. Apress, 2005. ISBN 978-1-59059-239-7.
-
Zakhour, Sharon. Java 6 : výukový kurz. Vyd. 1. Brno : Computer Press, 2007. ISBN 978-80-251-1575-6.
|