1 Datové struktury - Šnábl datové typy, deklarace, definice a inicializace proměnných viditelnost proměnných, lokální a globální proměnné dynamická a statická alokace paměti primitivní a referenční datové typy konverze datových typů pole lineární seznam fronta, zásobník stromy Šablony a smarty - Biberle 23 oddělení aplikační logiky a prezentace model MVC tvorba vlastních šablon hotové třídy šablon a jejich proměnné a metody (např. Smarty) 2 Pole - Příborský 7 deklarace pole jednorozměrné a vícerozměrné uložení pole v paměti procházení pole třída ArrayList XML - Příborský struktura dokumentu XML definice XML dokumentu pomocí definičního souboru DTD (deklarace elementů, atributů, postup při vytváření souboru DTD) zobrazení XML dokumentu pomocí kaskádových stylů převod XML do HTML pomocí souboru XSL (šablony xsl:template, xsl:apply-templates, xsl:value-of) parsování XML 3 Kolekce - Fryč 20 rozhraní List=seznam, Set=množina, Map=mapa generické typy metody pro práci s kolekcemi Vazby mezi tabulkami, spojování tabulek - Holík 7 WHERE, INNER JOIN, LEFT/RIGHT JOIN, FULL OUTER JOIN NATURAL LEFT JOIN, USING podmínka spojení tabulek 4 Řídící struktury - Řídký 5 větvení, spojování podmínek příkaz switch Session proměnné, vytvoření cookie v PHP - Řídký 20 využití cookies a sessions parametry funkce setcookie() uložení cookies zahájení a ukončení session uložení identifikátoru session a ukládání proměnných session funkce session_start(), session_id(), session_destroy(), session_unset()
globální pole $_SESSION[], $_COOKIE[] 5 Cykly - Herman 6 while, do-while for foreach příkazy break a continue Autentizace a autorizace - Tomášek 18 význam autentizace a autorizace autentizace pomocí protokolu HTTP, serverové proměnné $_SERVER['PHP_AUTH_USER'] a $_SERVER ['PHP_AUTH_PW'] autorizace uložená na skriptu, pracující s textovým souborem, databází autorizace pomocí souboru.htaccess a.htpasswd. šifrovací funkce PHP vhodné pro ukládání hesel serverové proměnné $_SERVER[...] 6 Funkce a metody - Špaček 13 definice vlastní funkce, metody volání funkce, metody Ladění a ošetřování chyb v PHP - Kalina 17 chyby syntaktické, sémantické a logické úrovně chyb, nastavení hlášení chyb, funkce error_reporting() ladící možnosti, zotavování z chyb, logování chyb. vlastní ošetření chybového hlášení při připojení se k databázovému serveru, operátor @ výjimky, zachytávání výjimek, blok try-catch-finally 7 Třída - Pekárek 15,16 deklarace třídy instanční a statické proměnné konstruktor vytvoření instance Práce s adresáři a se soubory v PHP - Herman 19 procházení a čtení adresáře funkce chdir(), opendir(), closedir(), mkdir(), rmdir(), rewinddir(), readdir, čtení a uložení souborů z PHP nastavení práv pro zápis, čtení, spouštění funkce fopen(), fwrite(), feof(), file(), fclose(), fread() nahrávání souborů na server superglobální pole $_FILE[soubor_uživatele][...] funkce is_uploaded_file(), move_uploaded_file() 8 Zapouzdření - Pekárek 14 specifikátory přístupu metody pro manipulaci s privátními proměnnými: set() a get() balíky Připojení k databázi MySQL z PHP a výpis z databáze - Popelka 15 vkládání souborů pomocí include a require připojení k databázovému serveru výpis dat z databázových tabulek
9 Metody ve třídě - Horáková 16 přetížené metody metody statické a instanční překrytí metody užití metody předka polymorfizmus Informační systémy - Paní učitelka struktura PIS: IS TPS, MIS, DSS, EIS, ES. Analýza a vývoj IS stanovení cílů projektu, specifikace požadavků, analýza a návrh, implementace a testování modely životního cyklu IS: vodopád, výzkumník, prototypování, spirálový model 10 Řetězce - Drdla 8 vytvoření řetězce práce s celým řetězcem práce s částí řetězce, s jednotlivými znaky porovnávání řetězců Agregace a druhá restrikce - Holík 6 shlukování informací, jedna informace z více záznamů agregační funkce AVG(), SUM(), COUNT(), MAX(), MIN() vytvoření a využití proměnné MySQL vnořené dotazy 11 Dědičnost - Špaček princip dědičnosti konstruktor potomka kolekce příbuzných tříd Frameworky - Šnábl s paní Učitelkou příklady frameworků použití frameworku 12 Abstraktní třídy a rozhraní - Přívara 18 abstraktní metody abstraktní třídy a jejich využití rozhraní a jeho implementace Základy relačních databází - Heneš 2 historie databází hierarchický, síťový a objektový model logická úroveň návrhu základy relačních databází klíče primární a cizí vazby mezi tabulkami, referenční integrita, relace, vícenásobné relace, rekurentní relace normální tabulky, normální formy ER model 13 GUI - Biberle 22, 23 základní grafické prvky Okna JFrame, vytvoření základního okna prvky formulářů
Layout - správce uspořádání Správa a zabezpečení databáze - Kalina 9, 18 databáze mysql a její tabulky user, db, host, tables_priv, columns_priv informační schéma nastavení práv uživateli příkazy GRANT a REVOKE role, funkce rolí, vytvoření rolí, nastavení práv pro roli, přidání uživatele do role 14 Událostmi řízené programování - Štrich 22 typy událostí implementace rozhraní pro zpracování události reakce na událost Projekce a restrikce - Tomášek 5 výběry sloupců aliasy sloupců a tabulek spojování sloupců pomocí fce CONCAT() výběry řádků změna řazení výpisu řádků omezení řádků výpisu využití NULL, LIKE pohledy 15 Terminálový vstup a výstup - Heneš 3 formátovaný a neformátovaný výstup použití třídy Scanner Připojení k databázi MySQL z PHP a zápis do databáze - Popelka 15, 16 připojení k databázovému serveru vstup od uživatele pomocí formuláře zabezpečení vstupu od uživatele znakové entity, kódování před výpisem fce htmlspecialchars(), AddSlashes() a StripSlashes()) 16 Práce se soubory a adresáři - Drdla třída File a její metody, metody list() a listfile() vstupní a výstupní proudy Funkce v PHP - Holík 14 definice funkce rozsah platnosti proměnné, lokální, globální a statické proměnné funkce s proměnným počtem parametrů (mocnina) předávání parametrů hodnotou a adresou 17 Vlákna - Přívara základní vlastnosti vlákna, třída Thread práce s vlákny synchronizace vláken Skriptovací jazyk PHP vložený do HTML - Popelka 12 přehled, vývoj, oblast použití vkládání PHP kódu do HTML stránky, způsob uložení a zobrazení stránky datové typy v PHP a jejich vlastnosti přetypování, výpis obsahu a typu proměnné (var_dump() a print_r())
18 Řazení tříd - Fryč 10, 11 třída Array a její metody: int compareto(trida t) přirozené a absolutní řazení Řetězce a funkce pro práci s regulárními výrazy v PHP - Šnábl 13 převod pole na řetězec a naopak (funkce implode() a explode()) spojování řetězců, funkce split(), funkce trim() regulární výrazy kotvy, třídy znaků, vestavěné třídy znaků, vícenásobné výskyty, speciální znaky, alternace a závorky funkce pro práci s regulárními výrazy 19 Výjimky - Řídký 19 použití (blok try-catch-finally) vlastní výjimky, dědičnost u výjimek propagace výjimek Základy HTML, URL, HTTP, druhy skriptování, formulíře - Přívara 11,12 skriptování na straně klienta a serveru odesílání požadavku na webový server hlavičky a funkce header() JavaScript, PHP, technologie Ajax formuláře v HTML základní prvky formuláře v HTML vlastnosti, způsoby zpracování formuláře nastavení hodnot v souboru php.ini (Register_globals, Magic_quotes, ) 20 Návrhové vzory - Holík 26 význam, použití příklad vzorů Pole v PHP - Horáková deklarace a inicializace pole asociativní a neasociativní pole funkce pro řazení pole (sort(), asort(), ksort()) procházení pole pomocí FOREACH funkce pro práci s proměnnými (isset(), unset(), empty()) 21 Složitější datové struktury - Pekárek 9 lineární seznam fronta zásobník implementace těchto struktur Transakce a zamykání tabulek - Biberle 10 princip zamykání tabulek příkazy LOCK a UNLOCK, zamčení WRITE a READ princip transakcí příkazy BEGIN a COMMIT práce s vyrovnávací pamětí a se žurnálem,, metoda přímé a zpožděné aktualizace uváznutí - důvod, detekce, řešení 22 Jednoduché řadící algoritmy a metody - Štrich 10 bublinková metoda
řazení přímým výběrem přímým zatřiďováním Indexy a vyhledávání, klíče - Štrich 4 klíče, primární klíče princip indexování jedinečné indexy, normální indexy fulltextové indexy (MATCH(), AGAINST(), výpočet relevance, váha slova) vytvoření klíče, složené klíče 23 Složitější řadící algoritmy a metody - Horáková 11 rekurze MergeSort QuickSort Jazyk UML - Špaček 1 využití UML diagramy tříd diagramy objektů případy užití diagram stavů diagram sekvencí diagram spolupráce diagram komponent 24 Hashování - Kalina 11 základní princip vlastní hashovací funkce řešení kolizí (stejný hash) přidávání do hashovací tabulky hledání v hashovací tabulce Dorozumívání klienta se serverem pomocí jazyka SQL - Herman 3 jazyk SQL jazyk pro dorozumívání klienta se serverem dělení: DDL, DML a DCL příkazy pro změny struktury a obsahu tabulek struktura SQL příkazu SELECT zálohování a načítání dat ze souborů, export a import dat pohledy, uložené procedury, triggery 25 Vyhledávací algoritmy a metody v setříděném a nesetříděném poli/struktuře - Tomášek 12 vyhledávání v nesetříděném poli/struktuřr binární vyhledávání princip a využití rekurze třída Array a její metody fill(), sort() a binarysearch() Uložení dat v MySQL - Heneš 8 typy tabulek MySQL datové a indexové tabulky dynamické a statické tabulky datové typy datové typy pro uložení času a data modifikátory datových typů funkce v MySQL numerické, logické, agregační, pro práci s řetězci, časem a daty