- Programovací paradigma … styl programování
Procedurální (imperativní) programování
- Program je složen z funkcí, které vykonávají sekvenci příkazů (výrazů)
- Používá externí vedlejší efekt
- Data a funkce jsou oddělené (globální proměnné a předávají si výsledky mezi sebou)
- Tok programu se řídí pomocí přesné sekvence příkazů
- Definované funkce se snažíme použít opakovaně
- Např.
C, Pascal, Fortran
- Použití: Jednoduché aplikace, vestavěné systémy, OS
Vedlejší efekt
Změna systému, která nastává mimo výstup funkce/metody. Ovlivní externí prostředí. Nedá se zpětně zjistit.
Např. změna globální proměnné, tisk na obrazovku
Funkcionální programování
- Jde o deklarativní programovací paradigma (co se má udělat, nikoliv jak)
- Program se skládá z funkcí, které nemění stav programu
- Funkce můžeme považovat za hodnoty (předávat jako argumenty nebo vracet)
- Bez vedlejších efektů (transparentnost)
- Preferujeme rekurzi místo cyklů
- Např.
Haskell, Lisp, OCaml
- Použití: paralelní nebo matematické výpočty
Objektově orientované programování
- Program je modelován jako sada objektů, které mají vlastnosti a můžou mezi sebou mít vztahy
- Třída je šablonou a objekt pak konkrétní instancí
- Nutnost držet se několika důležitých principů: zapouzdření, dědičnost, polymorfismus
- Např.
Java, C#, C++
- Použití: GUI, hry, větší aplikace