Programování 2
Kód | Zakončení | Kredity | Rozsah | Jazyk výuky |
---|---|---|---|---|
A0B36PR2 | Z,ZK | 6 | 2+2c | česky |
- Předmět nesmí být zapsán současně s:
- Programování v Javě (A7B36PJV)
- Předmět lze klasifikovat až po klasifikaci předmětů:
- Přednášející:
- Ivan Jelínek (gar.)
- Cvičící:
- Ivan Jelínek (gar.), Martin Balík, Martin Bloch, Zdeněk Buk, Lenka Hapalová, Jaroslav Kuchař, Radek Malinský, Martin Mudroch, Jan Šedivý
- Předmět zajišťuje:
- katedra počítačů
- Anotace:
-
Předmět navazuje na Programování 1 a klade si za cíl naučit studenty vytvořit aplikaci s grafickým uživatelským rozhraním se znalostí témat: polymorfismus, zpracovaní události, princip mechanismu výjimky, aplety, práce s uživatelskými knihovnami. Dále je student seznámen s jazykem C: komparativní výklad jazyka C, struktura programu a funkcí, pointery, dynamická správa paměti, student je schopen programy v jazyku C analyzovat.
- Požadavky:
-
Programovaní 1, https://eduweb.fel.cvut.cz/courses/A0B36PR2/
- Osnova přednášek:
-
1. Opakování a shrnutí základů programování v Javě, pole, funkce, parametry, objektový přístup, struktura
tříd a programu v Javě, abstraktní třída
2. Grafické uživatelské rozhraní (GUI) v jazyce Java, typy komunikace, knihovny AWT a SWING, princip
GUI, komponenty, kontejnery, správce rozmístění, obsluha událostí
3. Polymorfismus, řešení abstraktní třídou, rozhraní, rozhraní jako typ proměnné, rozhraní a dědičnost, typ
interface
4. Události jako objekt, zpracování události, zdroj události, posluchač události, model šíření události, model
šíření událostí, implementace modelu zpracování události,
5. Zpracování vlastní události, více zdrojů a posluchačů, rozlišení zdrojů,
6. Výjimky, pojem výjimky, princip mechanismu zpracování výjimek, kompletní zpracování výjimek
7. Vyhození výjimky, propagace výjimek, generování vlastní výjimky, hierarchie výjimek, kontrolované a
nekontrolované výjimky
8. Aplety, vlastnosti, použití, způsob aktivace, životní cyklus apletu, předávání parametrů do apletu, omezen
í apletu
9. Knihovny, práce s dokumentací, kontejnery, použití knihoven seznamů, množin, map v jazyce Java,
příklady použití¨
10. Základy programovaní v C, charakteristika jazyka, model kompilace, struktura programu, struktura funkce,
příklad programu
11. Komparativní výklad jazyka C k jazyku Java, makra, podmíněný překlad, syntaxe jazyka, struktury, uniony, výčtové typy
12. Systematické programování v C, preprocesor, základní knihovny, základní vstup a výstup
13. Pointery, dynamická správa paměti, pole a ukazatelé, funkce a pointery
14. Rezerva
- Osnova cvičení:
-
1. Úvodní test, zopakování základů programování a objektového přístupu
2. Polymorfismus, rozhraní, enum, generika^
3. Grafické uživatelské rozhraní
4. Zpracování událostí
5. Zpracování výjimek
6. Kolekce^
7. Databáze^
8. Vlákna, sítě
9. Základy programování v C
10. Pole, řetězce^
11. Dynamická správa paměti, pointery na funkce
12. Struktury, union, výčtová typy, volání C z Javy
13. Obhajoba semstrálních prací^
14. Zápočet
- Cíle studia:
-
Semestrální projekt zaměřený na dvě témata: ve formě interaktivní aplikace či apletu se zpracováním výjimek a událostí v jazyce Java a odladění jednoduché úlohu v jazyce C. Tři fáze kontroly: zadání s konzultací, průběžná konzultace, závěrečné předvedení a obhajoba.
- Studijní materiály:
-
[1] Zakhour, S: The Java Tutorial: A Short Course on the Basics, 4th Edition,Amazon, 2006, český překlad 2007
[2] Herout, P.: Učebnice jazyka Java, Kopp, 2007
[3] Hawlitzek, F: Java 2, Addison-Wesley, 2000, český překlad 2000
- Poznámka:
-
Rozsah výuky v kombinované formě studia: 14p+6c
- Rozvrh na zimní semestr 2011/2012:
- Rozvrh není připraven
- Rozvrh na letní semestr 2011/2012:
-
06:00–08:0008:00–10:0010:00–12:0012:00–14:0014:00–16:0016:00–18:0018:00–20:0020:00–22:0022:00–24:00
Po Út St Čt Pá - Předmět je součástí následujících studijních plánů:
-
- Kybernetika a robotika - Robotika (povinný předmět programu)
- Kybernetika a robotika - Senzory a přístrojová technika (povinný předmět programu)
- Kybernetika a robotika - Systémy a řízení (povinný předmět programu)
- Otevřená informatika - Počítačové systémy (povinný předmět programu)
- Otevřená informatika - Informatika a počítačové vědy (povinný předmět programu)
- Otevřená informatika - Softwarové systémy (povinný předmět programu)
- Kybernetika a robotika - před rozřazením do oborů (povinný předmět programu)
- Otevřená informatika - před rozřazením do oborů (povinný předmět programu)