- Přehled a základní rysy programovacích paradigmat - funkcionální, procedurální, objektové
- Symbolické výrazy a jejich vyhodnocování v jazyce Common Lisp
- Rekurzivní funkce a rekurzivní výpočetní proces
- Funkce vyššího řádu
- Lexikální a dynamický rozsah platnosti proměnných
- Makra
- Líné vyhodnocování v datových strukturách, přísliby a proudy
- Líné vyhodnocování v programovacích jazycích, aplikativní a normální model vyhodnocení
- Zásobníkový model vyhodnocování
- Objektově orientované programování - třídy a objekty, zprávy a metody
- Zapouzdření, polymorfismus, rozhraní, dědičnost (jednoduchá i vícenásobná)
- Pravidlo is-a, princip B. Liskovové, kontraktové programování
- OOP založené na prototypech
- , C++, Common Lisp, Python, …) a jejich objektově orientované rysy
- Paralelní program - proces a jeho stavy, plánovač, stav programu, historie, slabá férovost
- Invarianty programu - pravdivost a dokazování
- Atomické operace a pravidlo nejvýše jednou
- Problém kritické sekce - vlastnosti, Dekkerův algoritmus
- Semafory - operace invarianty a použití
- Výrobci a spotřebitelé
- INF-PVS Večeřící filozofové
- Bariéry
- Logické programování v Prologu - pravidla, cíl substituce, resoluční strom, reprezentace čísel a seznamů
- Softwarový proces, jeho fáze a jeho modely (vodopádový, evoluční, iterativní)
- Specifikace požadavků(druhy požadavků, metody zjišťování požadavků, diagram případů užití)
- Návrh systému a využití jazyka UML při návrhu (diagram tříd, sekvenční diagram, stavový diagram, diagram aktivit)
- Sestavení kvalitního kódu (formátování kódu, efektivní využívání deklarací, konvence zápisu funkcí a jejich parametrů, zásady pro psaní příkazů)
- Testování programu (metody testování, úrovně testování, kategorie chyb)
- Návrhové vzory a vzory architektur SW
- Verze software a systémy pro správu verzí
- Relační model databáze - atributy, n-tice, relace, relační proměnné
- Relační algebra - množinové operace, restrikce, projekce, přirozené spojení, přejmenování atributů, relační dělení
- Operace rozšíření
- SELECT výraz v SQL
- Kontrola integrity - primární a alternativní klíče, cizí klíče
- Funkční závislosti, Boyceho-Coddova normální forma, normalizace
- Pohledy - pohledy vSQL, měnitelné pohledy
- Agregace - slučování a rozdělování atributů, agregace v SQL
- [-] Počítačové sítě, jejich služby a architektury
- [-] Ethernet - přepínač, použití média, linkový rámec
- [-] Protokol IP - paket, adresy a podsítě, směrování
- [-] Protokoly TCP a UDP - spojení a řízení toku dat
- [-] Systém DNS
- [-] Aplikační služby a tvorba síťových aplikací
- [-] Bezpečnost počítačových sítích
- [-] Architektury a princip činnosti počítače
- [-] Číselné soustavy
- [-] Binární logika, logické operace a jejich vlastnosti, funkce a jejich úpravy, logické obvody
- [-] Reprezentace čísel a znaků v počítači
- [-] Detekční a samoopravné kódy
- [-] Operační systém, architektura, poskytovaná rozhraní
- [-] Vykonávání programu a proces překladu
- [-] Správa procesoru - procesy a vlákna, plánování jejich běhu, komunikace a synchronizace
- [-] Problém uváznutí, jeho detekce a metody předcházení
- [-] Správa operační paměti - segmentace, stránkování, virtuální paměť
- Přidělování a uvolňování paměti v uživatelských procesech, garbage collector