Moderní objektové programování ve Pharo
Kód | Zakončení | Kredity | Rozsah | Jazyk výuky |
---|---|---|---|---|
NI-MOP | KZ | 4 | 3C | česky |
- Garant předmětu:
- Robert Pergl
- Přednášející:
- Jan Blizničenko
- Cvičící:
- Jan Blizničenko, Robert Pergl
- Předmět zajišťuje:
- katedra softwarového inženýrství
- Anotace:
-
Objektově-orientované programování je v současnosti jedním z nejrozšířenějších paradigmat tvorby software, zejména podnikových informačních systémů, kde je využívána jeho schopnost přirozené abstrakce pro budování složitých moderních aplikací.
V tomto předmětu navazujeme na znalosti získané v předmětu BI-OOP a cílem je další prohloubení dovedností návrhu a implementace objektových systémů v moderním čistě objektovém systému Pharo (https://pharo.org). V předmětu je kladen důraz na individuální přístup ke studentům, jejich potřeb rozvoje a oblastem zájmu.
Kromě prohloubení dovedností objektového programování, které jsou obecně uplatnitelné i v ostatních OO jazycích, studenti též získají možnost pracovat na zajímavých projektech a OO technologiích v rámci semestrálních prací s možností spolupráce s praxí a návazných bakalářských, diplomových prací, postgraduálního studia i zajímavých pracovních nabídek díky našemu přímému zapojení ve Pharo Consortium.
- Požadavky:
-
Prerekvizita: BI-OOP
- Osnova přednášek:
-
1. Historie OOP, seznámení s prostředím Pharo
2. Syntaxe jazyka Pharo Smalltalk, live debugging, test-driven development
3. Základní knihovny Pharo, opakování a prohlubování základních dovedností OOP a návrhových vzorů
4. Opakování a prohlubování základních dovedností OOP a návrhových vzorů
5. Programování webových aplikací a persistence
6. Programování UI, vizualizace (knihovna Roassal)
7. Parsování a gramatiky, využívání reflexe
8. Práce na projektech, konzultace
9. Práce na projektech, konzultace
10. Práce na projektech, konzultace
11. Práce na projektech, konzultace
12. Práce na projektech, konzultace
13. Odevzdávání projektů
- Osnova cvičení:
-
1. Historie OOP, seznámení s prostředím Pharo
2. Syntaxe jazyka Pharo Smalltalk, live debugging, test-driven development
3. Základní knihovny Pharo, opakování a prohlubování základních dovedností OOP a návrhových vzorů
4. Opakování a prohlubování základních dovedností OOP a návrhových vzorů
5. Programování webových aplikací a persistence
6. Programování UI, vizualizace (knihovna Roassal)
7. Parsování a gramatiky, využívání reflexe
8. Práce na projektech, konzultace
9. Práce na projektech, konzultace
10. Práce na projektech, konzultace
11. Práce na projektech, konzultace
12. Práce na projektech, konzultace
13. Odevzdávání projektů
- Cíle studia:
-
Kromě prohloubení dovedností objektového programování, které jsou obecně uplatnitelné i v ostatních OO jazycích, studenti též získají možnost pracovat na zajímavých projektech a OO technologiích v rámci semestrálních prací s možností spolupráce s praxí a návazných bakalářských, diplomových prací, postgraduálního studia i zajímavých pracovních nabídek díky našemu přímému zapojení ve Pharo Consortium.
- Studijní materiály:
-
Knihy volně dostupné na http://books.pharo.org/
Pharo MOOC
- Poznámka:
-
Informace o předmětu a výukové materiály naleznete na https://courses.fit.cvut.cz/NI-MOP/.
Tento předmět obsahově navazuje na bakalářský předmět Objektově orientované programování.
- Další informace:
- https://courses.fit.cvut.cz/NI-MOP/
- Rozvrh na zimní semestr 2024/2025:
-
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á - Rozvrh na letní semestr 2024/2025:
- Rozvrh není připraven
- Předmět je součástí následujících studijních plánů:
-
- Bc. program Informatika, pro fázi studia bez oboru, 2015-2020 (volitelný předmět)
- Bc. obor Bezpečnost a informační technologie, 2015-2020 (volitelný předmět)
- Bc. obor Teoretická informatika, 2015-2020 (volitelný předmět)
- Bc. obor Počítačové inženýrství, 2015-2020 (volitelný předmět)
- Bc. obor Informační systémy a management, 2015-2020 (volitelný předmět)
- Bc. obor Webové a softwarové inženýrství, zaměření Softwarové inženýrství, 2015-2020 (volitelný předmět)
- Bc. obor Webové a softwarové inženýrství, zaměření Webové inženýrství, 2015-2020 (volitelný předmět)
- Bc. obor Webové a softwarové inženýrství, zaměření Počítačová grafika, 2015-2020 (volitelný předmět)
- Mgr. obor Znalostní inženýrství, 2016-2017 (volitelný předmět)
- Mgr. obor Počítačová bezpečnost, 2016-2019 (volitelný předmět)
- Mgr. obor Počítačové systémy a sítě, 2016-2019 (volitelný předmět)
- Mgr. obor Návrh a programování vestavných systémů, 2016-2019 (volitelný předmět)
- Mgr. obor Webové a softwarové inženýrství, zaměření Informační systémy a management, 2016-2019 (volitelný předmět)
- Mgr. obor Webové a softwarové inženýrství, zaměření Softwarové inženýrství, 2016-2019 (volitelný předmět)
- Mgr. obor Webové a softwarové inženýrství, zaměření Webové inženýrství, 2016-2019 (volitelný předmět)
- Mgr. program Informatika, pro fázi studia bez oboru, 2016-2019 (volitelný předmět)
- Mgr. obor Systémové programování, zaměření Systémové programování, 2016-2019 (volitelný předmět)
- Mgr. obor Systémové programování, zaměření Teoretická informatika, 2016-2017 (volitelný předmět)
- Mgr. specializace Teoretická informatika, 2018-2019 (volitelný předmět)
- Bc. obor Znalostní inženýrství, 2018-2020 (volitelný předmět)
- Mgr. obor Znalostní inženýrství, 2018-2019 (volitelný předmět)
- Mgr. specializace Počítačová bezpečnost, 2020 (volitelný předmět)
- Mgr. specializace Návrh a programování vestavných systémů, 2020 (volitelný předmět)
- Mgr. specializace Počítačové systémy a sítě, 2020 (volitelný předmět)
- Mgr. specializace Manažerská informatika, 2020 (volitelný předmět)
- Mgr. specializace Softwarové inženýrství, 2020 (volitelný předmět)
- Mgr. specializace Systémové programování, verze od 2020 (volitelný předmět)
- Mgr. specializace Webové inženýrství, 2020 (volitelný předmět)
- Mgr. specializace Znalostní inženýrství, 2020 (volitelný předmět)
- Mgr. specializace Teoretická informatika, 2020 (volitelný předmět)
- Mgr. program, pro fázi studia bez specializace, ver. pro roky 2020 a vyšší (volitelný předmět)
- Bc. specializace Informační bezpečnost, 2021 (volitelný předmět)
- Bc. specializace Manažerská informatika, 2021 (volitelný předmět)
- Bc. specializace Počítačová grafika, 2021 (volitelný předmět)
- Bc. specializace Počítačové inženýrství, 2021 (volitelný předmět)
- Bc. program, pro fázi studia bez specializace, 2021 (volitelný předmět)
- Bc. specializace Webové inženýrství, 2021 (volitelný předmět)
- Bc. specializace Umělá inteligence, 2021 (volitelný předmět)
- Bc. specializace Teoretická informatika, 2021 (volitelný předmět)
- Bc. specializace Softwarové inženýrství, 2021 (volitelný předmět)
- Bc. specializace Počítačové systémy a virtualizace, 2021 (volitelný předmět)
- Bc. specializace Počítačové sítě a Internet, 2021 (volitelný předmět)
- Study plan for Ukrainian refugees (volitelný předmět)
- Mgr. specializace Systémové programování, verze od 2023 (volitelný předmět)
- Mgr. specializace Teoretická informatika, 2023 (volitelný předmět)
- Bc. specializace Informační bezpečnost, 2024 (volitelný předmět)
- Bc. program, pro fázi studia bez specializace, 2024 (volitelný předmět)
- Bc. specializace Manažerská informatika, 2024 (volitelný předmět)
- Bc. specializace Počítačová grafika, 2024 (volitelný předmět)
- Bc. specializace Softwarové inženýrství, 2024 (volitelný předmět)
- Bc. specializace Webové inženýrství, 2024 (volitelný předmět)
- Bc. specializace Počítačové sítě a Internet, 2024 (volitelný předmět)
- Bc. specializace Počítačové inženýrství, 2024 (volitelný předmět)
- Bc. specializace Počítačové systémy a virtualizace, 2024 (volitelný předmět)
- Bc. specializace Umělá inteligence, 2024 (volitelný předmět)
- Bc. specializace Teoretická informatika, 2024 (volitelný předmět)