PRG003 Metodika programování a filozofie programovacích jazyků

Přednáška byla rozvržena na úterý od 14,00 v T2.

První přednáška 18. února bude jen úmluva a krátký úvod, naostro začneme 25. února

Přednáška je vhodná především pro studenty informatiky - jak odborného, tak i učitelského studia, mohou ji však navštěvovat i posluchači jiných oborů, kteří se hlouběji zajímají o programování a chtějí se více dovědět o programovacích jazycích.

Přednáška předpokládá u posluchačů znalosti v rozsahu přednášek Programování I (Pascal, včetně základů objektového programování). Hodí se i přehledová znalost jazyků C a C++ a některého neprocedurálního jazyka. Není však podmínkou absolvování příslušných předmětů. Skutečný zájemce si jistě potřebné globální vědomosti o těchto jazycích dokáže samostatně doplnit.

Mnohokrát se již stalo, že idea obsažená v dávno zapomenutém (čti neužívaném) jazyku se později vrátila jako „objev“. Na přednášce se společně zamyslíme nad vývojem metodiky programování (strukturované, modulární, objektové, event-driven, logické, funkcionální, ..., grafické programování) a nad tím, jak se tyto koncepty projevily v nejdůležitějších programovacích jazycích. Půjde nám především o souvislosti, ne o detaily nebo přesný historický popis vývoje. Důraz bude na idejích, které jednotlivé konstrukce v programovacích jazycích implementují, ne na syntaxi, pomocí níž se v nich zapisují. Při výběru programovacích jazyků budeme větší pozornost věnovat těm, které se skutečně "ujaly v praxi".

Zcela jistě se budeme zabývat těmito programovacími jazyky: FORTRAN, ALGOL, SIMULA, ADA, LISP, APL, Prolog, C a C++, SMALLTALK a Java. Míra pozornosti věnovaná jednotlivým aspektům a programovacím jazykům bude záviset i na zájmu posluchačů. Výklad bude veden pomocí příkladů, nepředpokládá se však, že by posluchači museli psát a ladit svoje programy v jednotlivých jazycích.

Zkouška je ústní. U zkoušky si student vybere jeden z jazyků, kterým bude na přednášce věnována větší pozornost (o repertoáru se domluvíme). Zvolený jazyk bude muset znát podrobněji. Kromě toho bude vypsán jistý počet "přehledových" otázek pokrývajících tématiku přednášky.