Maturitní témata
4. ročník
Programování
-
Proměnné
- datové typy
- velikosti
-
uložení záporných čísel
- desetinná čísla
- hodnotové a referenční
- platnost proměnných
-
operátory
- aritmetické
- logické + pravdivostní tabulky
- bitové
- enum
- přetěžování operátorů
-
Procedury, funkce
- parametry
- rozdíly
- návratový typ
-
předávání parametrů do funkce
-
Garbage collector
-
strategie
- reference counter
- mark-and-sweep
- heap/stack
- referenční datové typy
- memory leak
-
Řídicí struktury
-
Algoritmy
- vlastnosti
- vztah algoritmů a programovacích jazyků
-
výpočet asymptotické složitosti
- funkce omikron
- omega
- theta
-
algoritmy v poli
- min/max
- otočení
- vkládání
- linární vyhl.
- binární vyhl.
-
řadící alg.
- bubble sort
- selection sort
- insertion sort
- quick sort
- merge sort
- heap sort
- stabilita řazení
- implementace jednoduchých alg.
-
Rekurze
- definice
- vztah rekurzivního a iterativního algoritmu
- příklady
-
Pole a kolekce
- definice pole
- princip
- uložení v RAM
- rozdíl polí a kolekcí
- výhody/nevýhody
- indexy
- 2D/3D pole
- List
- Dictionary
-
Řetězce
- string
- jeho reprezentace v RAM
- vztah stringu a pole
- velikost
-
práce s řetězci - základní funkce
- split
- substring
- tolower
- toupper
- replace
- trim
- pad
- spojování řetězců
- StringBuilder
- bílé znaky
-
escape sekvence
- \n
- \r
- \t
- \\
- @"\string"
- $"hello {variable}"
-
Datové struktury
- zásobník
- fronta
- single-linked list
- double-linked list
- principy a použití
-
implementace fronty a zásobníku
- v poli
- ve spojovém seznamu
-
Soubory a souborový systém
- čtení a zápis do souboru
- zpracování CSV souboru
- XML
- JSON
-
práce se souborovým systémem
- FileInfo
- DirectoryInfo
- DriveInfo
-
Základy OOP
- třída
- instance
- vlastnosti
- metody
- zapouzdření
- modifikátory přístupu
- konstruktor
-
Dědičnost v OOP
- dědičnost
- konstruktory
- polymorfismus
- překrývání metod
- rozhraní
- abstraktní třída
-
Pokročilé prvky OOP
- statické vlastnosti a metody
- statický konstruktor
- vnitřní třídy
- generické třídy
- generické metody
-
UML
- popis UML
- základní diagramy
- Class diagram (diagram tříd) a význam jednotlivých symbolů v kódu
- UseCase diagram (diagram případů užití)
- State diagram
- Sequence diagram (sekvenční diagram)
-
Regulární výrazy
-
význam jednotlivých speciálních znaků
- výčet
- opakování
- povinnost
- začátek/konec
- jejich praktické využití
-
Formuláře
-
základní práce s formulářovými prvky
- textbox
- button
- listbox
- combobox
- události
- otevírání formulářů a zpracování hodnot
- Show/ShowDialog
-
Formuláře
- datagrid - práce s komponentou datagrid
- připojení DataSource
- napojení DataModelu na souborové/databázové repository
-
Formuláře
- validace vstupních hodnot
- validace na úrovni formuláře a položky
- ErrorProvider
- aplikace regulárních výrazů
-
GDI grafika
-
kreslení jednoduchých objektů
- práce s barvami
- definice štětce a pera
- objekt Graphics
- událost Paint
-
kreslení
- export do JPG
- transformace SS
-
Návrhové vzory GoF
- Tovární metoda (Factory Method)
- Jedináček (Singleton)
- Příkaz (Command)
- Pozorovatel (Observer)
- Iterator
- State
- Decorator
- Memento
- Adapter
-
Databáze
- připojení k MySQL/MSSQL
- ORM - Entity Framework
- mapování tabulek
- vazby
- DbContext
- DbSet
- repository
- LINQ
-
Teorie testování
- typy testů
- blackbox/whitebox
- test UI
- usability testy
- testy výkonu
- profiler
- Test Driven Development
-
Unit testy
- princip a využití unit testů
- testovací třídy
- testovací metody
- pre-testové a post-testové rutiny
- testování formulářů
-
Integrační testy
- význam integračních testů
- zásady nahraditelnosti
- mock objekt
-
ASP.NET MVC základy
- princip architektury Model-View-Controller
- zpracování požadavku
- směrování
- výchozí směrování
- HTTP protokol
- controller
- akce
- parametry akce
-
návratový typ - ActionResult
-
ASP.NET MVC View
- princip tvorby dynamického view
- Razor engine
- layout
-
základní konstrukce ve View
- výpis proměnné
- cyklus
- podmínka
- tvorba odkazů
- template
- partial view
- ViewComponents
-
předávání dat do view
-
ASP.NET MVC formuláře
- definice a generování formuláře
-
formulářové prvky
- zpracování formuláře
- validace hodnot
- session
-
REST API
-
HTTP metody
- mapování na akce
- response
- JSON
- XML
-
stavové kódy
- 200
- 201
- 301
- 302
- 400
- 401
- 403
- 404
- 500
- autentizace (JWT)
- REST - restful - formát adres (/users/:id)
- ASP.NET MVC API
-
Události a delegáty
-
delegáty
- Observer
- Lambda funkce
- anonymní funkce/objekty
-
dynamické typy
-
Reflexe
- Type
- PropertyInfo
- MethodInfo
- přístup k private
- tvorba instancí (volání konstruktoru)
- volání metod podle názvu (Invoke)
- Atributy (anotace)