Tato stránka vychází z podkladů pro tištěné studijní plány (tzv. Karolinku).
Aktuální studijní plány najdete zde.
Specializace Databáze a web nabízí škálu předmětů zaměřených na databázové a webové metody a technologie, analýzu dat, databázovou administraci, programování a vývoj tradičních, webových, databázových a datově intenzivních aplikací. Důraz je kladen na relační i nerelační databáze, analýzu sociálních sítí, webové a multimediální vyhledávače, metody extrakce vlastností z dat. Vedle tohoto profilujícího zaměření nabízí specializace také tradiční informatický základ, který absolventa připraví na navazující magisterské studium informatiky.
Povinné předměty společné pro všechny specializace jsou uvedeny v předchozí části.
kód | Předmět | Kredity | ZS | LS | |
NSWI142 | Programování webových aplikací | 5 | 2/2 Z+Zk | — | |
NDBI026 | Databázové aplikace | 4 | — | 1/2 KZ | |
NDBI007 | Databázové přístupové metody | 4 | 2/1 Z+Zk | — | |
NDBI040 | Moderní databázové systémy | 5 | 2/2 Z+Zk | — | |
NSWI153 | Pokročilé programování webových aplikací | 5 | — | 2/2 Z+Zk | |
NPRG036 | Datové formáty | 5 | — | 2/2 Z+Zk | |
NDBI046 | Datový management | 5 | — | 2/2 Z+Zk | |
NDBI038 | Vyhledávání na webu | 4 | — | 2/1 Z+Zk |
Podmínkou pro přihlášení ke státní závěrečné zkoušce je získání 15 kreditů za předměty z této skupiny.
kód | Předmět | Kredity | ZS | LS | |
NPRG041 | Programování v C++ | 5 | 2/2 Z+Zk | — | |
NPRG013 | Programování v jazyce Java | 5 | 2/2 Z+Zk | — | |
NPRG035 | Programování v jazyce C# | 5 | 2/2 Z+Zk | — | |
NPRG051 | Pokročilé programování v C++ | 5 | — | 2/2 Z+Zk | |
NPRG021 | Pokročilé programování v jazyce Java | 5 | — | 2/2 Z+Zk | |
NPRG038 | Pokročilé programování v jazyce C# | 5 | — | 2/2 Z+Zk | |
NPRG005 | Neprocedurální programování | 5 | — | 2/2 Z+Zk |
Podmínkou pro přihlášení ke státní závěrečné zkoušce je získání 6 kreditů za předměty z této skupiny.
kód | Předmět | Kredity | ZS | LS | |
NSWI004 | Operační systémy | 4 | 2/1 KZ | — | |
NPFL054 | Úvod do strojového učení v systému R | 5 | 2/2 Z+Zk | — | |
NDBI045 | Vyhledávání a explorace ve videu | 5 | — | 2/2 Z+Zk | |
NDBI037 | Informační modely s uspořádáním | 4 | 2/1 Z+Zk | — | |
NDBI013 | Administrace Oracle | 2 | — | 0/2 Z |
Podmínkou pro přihlášení ke státní závěrečné zkoušce je získání 3 kredity za předměty z této skupiny.
kód | Předmět | Kredity | ZS | LS | |
NMAI055 | Matematická analýza 2 | 5 | 2/2 Z+Zk | — | |
NPRG056 | Programování mobilních zařízení | 3 | 0/2 Z | — | |
NAIL120 | Úvod do umělé inteligence | 5 | — | 2/2 Z+Zk | |
NSWI130 | Architektury softwarových systémů | 5 | 2/2 Z+Zk | — | |
NSWI090 | Počítačové sítě | 3 | — | 2/0 Zk | |
NPGR036 | Počítačové vidění | 5 | — | 2/2 Z+Zk | |
NPGR002 | Digitální zpracování obrazu | 4 | 3/0 Zk | — | |
NAIL121 | Seminář dobývání znalostí | 4 | — | 1/2 KZ | |
NPGR035 | Strojové učení v počítačovém vidění | 5 | 2/2 Z+Zk | — |
Doporučený průběh studia zahrnuje všechny povinné předměty a některé další povinně volitelné nebo volitelné předměty. Posluchač si ho musí sám doplnit dalšími povinně volitelnými a volitelnými předměty podle vlastního výběru. Povinné předměty jsou v tabulkách doporučeného průběhu studia vyznačeny tučně, povinně volitelné běžným písmem a volitelné kurzívou.
kód | Předmět | Kredity | ZS | LS | |
Programování v jazyce Java/C++/C# | 5 | 2/2 Z+Zk | — | ||
NDBI025 | Databázové systémy | 5 | 2/2 Z+Zk | — | |
NSWI142 | Programování webových aplikací | 5 | 2/2 Z+Zk | — | |
NTIN061 | Algoritmy a datové struktury 2 | 5 | 2/2 Z+Zk | — | |
NAIL062 | Výroková a predikátová logika | 5 | 2/2 Z+Zk | — | |
NDMI011 | Kombinatorika a grafy 1 | 5 | 2/2 Z+Zk | — | |
NJAZ074 | Anglický jazyk pro středně pokročilé III | 2 | 1 | 0/2 Z | — |
NTVY016 | Tělesná výchova III | 4 | 1 | 0/2 Z | — |
NSWI153 | Pokročilé programování webových aplikací | 5 | — | 2/2 Z+Zk | |
NTIN071 | Automaty a gramatiky | 5 | — | 2/2 Z+Zk | |
NMAI059 | Pravděpodobnost a statistika 1 | 5 | — | 2/2 Z+Zk | |
NPRG045 | Ročníkový projekt | 4 | — | 0/1 Z | |
NJAZ090 | Anglický jazyk pro středně pokročilé IV | 2 | 1 | — | 0/2 Z |
NJAZ091 | Anglický jazyk | 3 | 1 | — | 0/0 Zk |
NTVY017 | Tělesná výchova IV | 4 | 1 | — | 0/2 Z |
Povinně volitelné předměty | |||||
Volitelné předměty |
kód | Předmět | Kredity | ZS | LS | |
NDBI026 | Databázové aplikace | 4 | — | 1/2 KZ | |
NDBI007 | Databázové přístupové metody | 4 | 2/1 Z+Zk | — | |
NDBI040 | Moderní databázové systémy | 5 | 2/2 Z+Zk | — | |
NPRG036 | Datové formáty | 5 | — | 2/2 Z+Zk | |
NDBI046 | Datový management | 5 | — | 2/2 Z+Zk | |
NDBI038 | Vyhledávání na webu | 4 | — | 2/1 Z+Zk | |
NSZZ031 | Vypracování a konzultace bakalářské práce | 6 | — | 0/4 Z | |
Povinně volitelné předměty | |||||
Volitelné předměty |
2 Výuka anglického jazyka NJAZ070, NJAZ072, NJAZ074, NJAZ090 v rozsahu 0/2 v každém semestru je určena pro středně pokročilé a pokročilé. Pro začátečníky a mírně pokročilé jsou určeny předměty NJAZ071, NJAZ073, NJAZ075, NJAZ089 s rozsahem výuky 0/4 v každém semestru.
3 Zkoušku z anglického jazyka NJAZ091 je možné absolvovat v zimním nebo v letním semestru.
4 Místo jednoho z předmětů NTVY014, NTVY015, NTVY016 a NTVY017 je možné si zapsat letní výcvikový kurz NTVY018 nebo zimní výcvikový kurz NTVY019. Tyto kurzy může student absolvovat kdykoli v průběhu bakalářského studia.
1. Databáze
Architektury databázových systémů. Konceptuální, logická a fyzická úroveň pohledů na data.
Algoritmy návrhu schémat relací, normální formy, referenční integrita. Důvody pro normalizaci relací.
Transakční zpracování, vlastnosti transakcí, uzamykací protokoly, zablokování. Řešení problému uváznutí v databázi. Izolace transakcí v SQL.
Konceptuální modelování. Rámcově převod konceptuálního modelu na (relační) logický datový model.
Přehled SQL. Základní dotazy. Seskupování dat a agregace. Spojování tabulek. Vnořené dotazy, operátory, testy na NULL hodnotu.
Uložené procedury, triggery, funkce.
Moderní databázové koncepty. MapReduce - princip, vlastnosti, kritika, alternativní přístupy. NoSQL databáze. Grafové databáze. Data s více modely. Multi-model databáze. Polystores. Jazyk SQL v prostředí Big Data. NewSQL databáze.
2. Datový management
Datové formáty. Základní typy strukturovaných dat, příklady užití. Formáty pro tabulková data, schémata, jazyky pro transformaci dat. Formáty pro stromová a grafová data, schémata, jazyky pro transformaci dat. Formáty pro geodata. Základy grafických a multimediálních formátů. Sémantický popis dat, slovníky.
Procesy zpracování dat. Předzpracování dat. Katalogizace dat, metadata. Kódování a komprese dat. Základy šifrování dat.
Základy indexování. Typy organizace souborů, přímé/nepřímé indexování, primární/sekundární index.
Hashování na vnější paměti. Cormack, Larson & Kalja, Faginovo rozšiřitelné hashování, Lineární hashování.
Hierarchické indexování. Indexování v prostorových databázích, prostorové spojení, prostorové dotazování.
3. Web
World Wide Web. Základní principy www, chápání webu jako distribuované databáze a jako aplikační platformy.
Tvorba statických webových stránek. Principy a syntax značkovacích jazyků a jejich interpretace prohlížečem (vizualizace, DOM). Ovlivňování vzhledu webové stránky pomocí CSS. Základy interakce s uživatelem.
Architektury a základní principy webových aplikací. CGI a CGI-like aplikace. AJAX, Single-page aplikace, souvislost s REST API, klasické přístupy k návrhu SPA a udržování stavu aplikace. Návaznost na protokol HTTP, udržování uživatelské relace, cookies. Nejpoužívanější návrhové vzory a techniky.
Programování na straně klienta. Základní syntaxe JavaScriptu, principy prototypového OOP, funkcionální konstrukce. Práce s DOM. Zpracování událostí v DOM, event driven model, asynchronní programování v JavaScriptu. Standardní API v prohlížeči.
API webových aplikací. Způsob návrhu REST API, OpenAPI. Webové služby. WebSocket, WebRTC. Základy bezpečnosti webových aplikací. Autentizace. Autorizace, příklady bezpečnostních modelů. Šifrování, hašovací funkce a jejich použití v rámci web aplikací.
Vyhledávání na webu. Booleovské a vektorové modely, word2vec. Vyhledávání v hypertextu, ranking, PageRank, optimalizace webových stránek pro vyhledávače. Podobnostní vyhledávání v multimediálních databázích. Metrické indexování podobnosti.