Skip to content

Latest commit

 

History

History
94 lines (82 loc) · 7.8 KB

README.md

File metadata and controls

94 lines (82 loc) · 7.8 KB

Okruhy ke státní závěrečné zkoušce pro bakalářský studijní program Informatika

A. Předmět Počítačové a informační systémy

Programování

  • Paradigmata programování (deklarativní a imperativní, funkcionální, strukturované a objektově orientované paradigma, specifické vlastnosti a principy jednotlivých paradigmat)
  • Datové typy (statická a dynamická alokace, dynamické typování, životní cyklus paměti, jednoduché, strukturované, abstraktní a generické typy, kolekce, soubory, streamy)
  • Programovací techniky (řídící struktury, funkce, jejich parametry a návratové hodnoty, rekurze, polymorfismus, kolekce, výjimky a jejich strukturovaná obsluha, paralelismus a vlákna)
  • Vývoj aplikací (C#/Java, typový systém, virtuální stroj a kompilace, tvorba uživatelského rozhraní, delegáty a události, přístup k databázím, práce s textovými daty, asynchronní programování, serializace, síťová komunikace)
  • Reprezentace čísel v počítači (číselné soustavy a převody, celá čísla, čísla s pevnou řádovou čárkou, čísla s pohyblivou řádovou čárkou vyjádřená v binárním, decimálním a hexadecimálním základu, aritmetika s čísly v různých reprezentacích, kódování znaků)

Softwarové inženýrství

  • Životní cyklus vývoje software (typické fáze, jejich náplň, základní modely vývoje)
  • UML (typy diagramů, statický náhled na systém, dynamický náhled na systém, mapování na zdrojový kód, využití v rámci vývoje)
  • Informační systém (životní cyklus, návrh a architektura informačního systému)
  • Návrhové vzory a praktiky pro vývoj informačních systémů (vzory GoF, doménová logika, datové zdroje, objektově-relační chování a struktury, doménově specifické jazyky)

Databázové systémy

  • Datové modely (relační datový model: definice, normální formy, funkční závislosti; objektově-relační datový model: základní rysy)
  • Dotazovací jazyky (SQL: jazyk pro definici dat, jazyk pro manipulaci s daty, SELECT – spojení, poddotazy, agregační funkce; procedurální rozšíření SQL: PL/SQL, T/SQL, obecné rysy)
  • Analýza informačního systému (konceptuální a datový model, stavová analýza, funkční analýza – minispecifikace, návrh formulářů)
  • Transakce (definice, ACID, serializovatelnost transakcí, zotavení, řízení souběhu, úroveň izolace transakcí)
  • Vykonávání dotazů v databázových systémech (fyzický návrh databáze, vykonávání dotazů, logické a fyzické operace)
  • Návrh a implementace datové vrstvy (objektově-relační mapování, DTO, DAO, efektivní implementace datové vrstvy)

Architektury počítačů a operační systémy (APPS, OSY)

  • Architektury počítačů (základní architektury počítačů, jejich popis, výhody a nevýhody, princip fungování počítače, způsoby adresování, hierarchické uspořádání pamětí).
  • RISC procesory (základní konstrukční vlastnosti, způsoby urychlování práce procesorů, zřetězené zpracování instrukcí, predikce skoků).
  • GPU, CUDA (důvody využívání GPU, popis technologie CUDA, postup výpočtu, základní pravidla programování, postup výpočtu, práce s pamětí).
  • Procesy (vytváření procesů, implementace procesů v OS, tabulka procesů, stavy procesů, obsluha HW přerušení, multitasking, pseudoparalelismus, plánovací algoritmy).
  • Meziprocesní komunikace (souběh, kritická sekce, vzájemné vyloučení, základní způsoby realizace vzájemného vyloučení, semafor, monitor, fronta zpráv, sdílená paměť).
  • Správa paměti (princip fungování virtuální pamětí, segmentace a její přínosy, správa/evidence volné paměti).

Počítačové sítě a komunikační technologie (POS, PB)

  • Směrování a přepínání v počítačových sítích (topologie LAN sítí; aktivní prvky a jejich funkce – přepínač a jeho funkce, směrovač; směrovací protokoly – základní popis, třídy směrovacích protokolů, hierarchické směrování).
  • Protokolová rodina TCP/IP (TCP/IP model a jeho vztah k referenčnímu modelu ISO‐OSI; síťové protokoly – IPv4 vs. IPv6; protokoly transportní vrstvy a princip fungování spolehlivého přenosového kanálu protokolu TCP).
  • Služby Internetu a jejich protokoly (elektronická pošta; protokol HTTP; DNS – typy záznamů, doménový strom, zóny, zabezpečení DNS; SSH).
  • Základy kryptografie (blokové a proudové šifry včetně jejich režimů; symetrická a asymetrická kryptografie a jejich využití; hashovací funkce; infrastruktura veřejného klíče – základní pilíře, certifikační autorita, certifikát veřejného klíče).
  • Tvorba bezpečných aplikací (obecné principy; nejčastější zranitelnosti, jejich kategorizace a popis; bezpečnost databází a webových aplikací a typické útoky na ně).
  • Bezpečnost počítačových sítí (útoky na infrastrukturu, servery a aplikační protokoly, a jejich detekce; paketové filtry, stavový firewall; virtuální privátní sítě).

Počítačová grafika (ZPG, URO)

  • Metody a nástroje pro realizaci grafických uživatelských rozhraní (kognitivní schopnosti člověka, mentální modely, základní pravidla designu, barevné prostory, volba barev a prezentace textu).
  • Standardní zobrazovací řetězec (realizace jednotlivých kroků řetězce, modelovací a zobrazovací transformace, Phongův osvětlovací model, řešení viditelnosti, identifikace těles, stručná charakteristika standardu OpenGL a jazyka GLSL).
  • Geometrické modelování (afinní a projektivní prostory, popis těles a možnosti jejich reprezentace, základní křivky používané v počítačové grafice, jejich vyjádření, vlastnosti a použití, Fergusonova kubika, Bézierova křivka).

B. Předmět Teoretické základy informatiky

Algoritmy

  • Strategie algoritmického řešení problémů (strategie řešení hrubou silou, úplným prohledáváním, sniž a vyřeš, rozděl a panuj, transformuj a vyřeš, záměna paměťové a časové složitosti, dynamické programování, hladové algoritmy)
  • Složitost algoritmů (asymptotická notace, korektnost algoritmů a její analýza)
  • Základní datové struktury (pole, seznam, zásobník, fronta, graf, vyhledávací strom, hašovací tabulka, halda)
  • Explorativní analýza dat (data a jejich vlastnosti – numerické, kategoriální a jiné atributy, statistické vlastnosti dat, vztahy mezi atributy)
  • Metody strojového učení (shlukování, klasifikace, vyhodnocení algoritmů)

Teoretická informatika

  • Logika (výroková logika a predikátová logika, syntaxe a sémantika formulí výrokové a predikátové logiky, sémantické a syntaktické dokazování, ekvivalentní úpravy, rezoluční metoda)
  • Booleova algebra (Booleova funkce, minimalizace, vazba na kombinační obvody)
  • Množiny, relace a funkce (operace na množinách, druhy a vlastnosti relací, relace typu, ekvivalence a uspořádání, vlastnosti funkcí, induktivní zobrazení)

Matematika pro informatiku (MA I, MA II, LA, DIM)

  • Diskrétní matematika (posloupnosti, rekurentní rovnice, kombinatorické výběry, diskrétní pravděpodobnost, řešení kongruencí).
  • Teorie grafů (grafy, vzdálenost v grafu, míry souvislosti, stromy a kostry, barvení grafů a jejich aplikace, toky v sítích).
  • Lineární algebra (matice a maticové operace, inverzní matice, úpravy a řešení soustav lineárních rovnic, vektorové prostory a báze vektorových prostorů, lineární zobrazení, spektrální teorie).
  • Diferenciální a integrální počet funkcí jedné proměnné (posloupnosti, limita a spojitost, derivace, extrémy, neurčité a určité integrály).
  • Diferenciální a integrální počet funkcí více proměnných (parciální derivace, gradient, extrémy, dvojné a trojné integrály).