Detail předmětu
Dynamické jazyky
DJA Ak. rok 2022/2023 letní semestr 5 kreditů
Objektová orientace v programovacích jazycích, operačních a databázových systémech. Kořeny Smalltalku: LISP a Simula 67. Čistá objektová orientace. Jazyk Smalltalk. Vývojové prostředí a architektura systémů typu Smalltalk. Jazyk a systém Self. Principy implementace systémů typu Smalltalk a Self. Perzistence v objektově orientovaných systémech. Reflektivita, principy otevřených implementací. Programovací techniky, využivající reflektivitu.
Garant předmětu
Jazyk výuky
Zakončení
Rozsah
- 26 hod. přednášky
- 26 hod. projekty
Bodové hodnocení
- 70 bodů závěrečná zkouška (písemná část)
- 30 bodů projekty
Zajišťuje ústav
Přednášející
Cvičící
Stránky předmětu
Získané dovednosti, znalosti a kompetence z předmětu
Schopnost používat čisté objektově orientované jazyky typu Smalltalk a jejich dynamické vlastnosti.
Vhled do obecných principů čisté objektové orientace a přehled o možnostech aplikací těchto pricipů v různých oblastech.
Cíle předmětu
Seznámit s podstatou a možnostmi dynamických jazyků. Seznámit s kořeny čisté objektové orientace v podobě dynamického jazyka a systému Smalltalk, seznámit s architekturou dynamických objektově orientovaných systémů a s možnostmi jejich aplikací.
Proč je předmět vyučován
K programování dynamických a adaptivních programových systémů musí programovací jazyky podporovat přístup k jejich vlastní struktuře a sledování jejich chování (tato schopnost se nazývá "reflexe"). Kromě toho musí umožnit dynamickou modifikaci jak struktury, tak i chování. LISP a Smalltalk jsou typickými dynamickými jazyky. Předmět se zabývá objektovou orientací v programovacích jazycích, operačních a databázových systémech, vlivem Smalltalku na vývoj objektově orientovaných technologií, seznamuje s čistě objektově orientovanými dynamickými jazyky a systémy Smalltalk a Self. Dále jsou prezentovány architektury a principy implementace systémů typu Smalltalk, v neposlední řadě pak jejich aplikace v rychlém prototypování.
Literatura studijní
- Goldberg, A., Robson, D.: Smalltalk-80: The Language, Addison Wesley, 1989, ISBN 0-201-13688-0
Osnova přednášek
- Objektová orientace v programovacích jazycích, operačních a databázových systémech.
- Kořeny Smalltalku: LISP a Simula 67. Čistá objektová orientace.
- Jazyk Smalltalk - čistá objektová orientace založená na třídách.
- Vývojové prostředí systémů typu Smalltalk.
- Architektura systémů typu Smalltalk.
- Jazyk a systém Self - beztřídní čistá objektová orientace.
- Principy implementace systémů typu Smalltalk a Self.
- Perzistence v objektově orientovaných systémech.
- Reflektivita, principy otevřených implementací.
- Programovací techniky, využivající reflektivitu.
- Paralelní a distribuované programování v systémech typu Smalltalk.
- Objektově orientované modelování a prototypování.
- Ostatní dynamické jazyky. Interoperabilita.
Osnova ostatní - projekty, práce
- Jednoduchá aplikace, demonstrující dynamické vlastnosti a reflektivitu v libovolném dynamickém jazyce, porovnání vlastností Smalltalku s jiným dynamickým programovacím jazykem.
Průběžná kontrola studia
Projekt.
Zařazení předmětu ve studijních plánech
- Program IT-MGR-2, obor MBI, MGM, MIN, MPV, MSK, libovolný ročník, volitelný
- Program IT-MGR-2, obor MBS, MIS, libovolný ročník, povinně volitelný skupina S
- Program IT-MGR-2, obor MMM, libovolný ročník, povinně volitelný skupina L
- Program MITAI, obor NADE, NBIO, NCPS, NEMB, NEMB do 2021/22, NGRI, NHPC, NIDE, NISD, NISY, NISY do 2020/21, NMAL, NMAT, NNET, NSEC, NSEN, NSPE, NVER, NVIZ, libovolný ročník, volitelný