PředmětyPředměty(verze: 945)
Předmět, akademický rok 2023/2024
   Přihlásit přes CAS
Vývoj a administrace databázových aplikací - OPBI3I046A
Anglický název: Development and administration of database applications
Zajišťuje: Katedra informačních technologií a technické výchovy (41-KITTV)
Fakulta: Pedagogická fakulta
Platnost: od 2022
Semestr: letní
E-Kredity: 5
Způsob provedení zkoušky: letní s.:
Rozsah, examinace: letní s.:1/2, KZ [HT]
Rozsah za akademický rok: 0 [hodiny]
Počet míst: 16 / neurčen (neurčen)
Minimální obsazenost: neomezen
4EU+: ne
Virtuální mobilita / počet míst pro virtuální mobilitu: ne
Stav předmětu: vyučován
Jazyk výuky: čeština
Způsob výuky: prezenční
Způsob výuky: prezenční
Poznámka: předmět je možno zapsat mimo plán
povolen pro zápis po webu
při zápisu přednost, je-li ve stud. plánu
Garant: PhDr. Tomáš Jeřábek, Ph.D.
Vyučující: PhDr. Josef Procházka, Ph.D.
Prerekvizity : OPBI3I031A
Anotace -
Poslední úprava: PhDr. Tomáš Jeřábek, Ph.D. (09.09.2019)
Cílem předmětu je v návaznosti na předcházející předměty studia z oblasti programování a návrhu databází osvojení si příslušných dovedností na úrovni potřebné pro tvorbu databázových aplikací s dynamickým WWW rozhraním a jejich správu. Obsah předmětu pokrývá otázky administrace webových a databázových serverů včetně nastavení zabezpečení a jejich vzájemného propojení, zálohování databází a její automatizace v prostředí webového serveru. Při tvůrčí práci se studenti seznámí s vhodnými architekturami, návrhovými vzory a frameworky pro snadnou obsluhu databázového rozhraní. Součástí předmětu je návrh a implementace vlastní databázové aplikace.
Deskriptory
Poslední úprava: PaedDr. Eva Battistová (25.01.2023)
Příprava na výuku
Doba očekávané přípravy na 1 hodinu přednášky 30 minut
Doba očekávané přípravy na 1 cvičení 60 minut
Samostudium literatury (za semestr) 20 hodin
Práce se studijními materiály (za semestr) 10 hodin
Plnění průběžných úkolů (za semestr) 12 hodin
 
Plnění předmětu  
Seminární práce 0 hodin
Příprava na zápočet 15 hodin
Příprava na zkoušku a zkouška 0 hodin
Literatura
Poslední úprava: PhDr. Tomáš Jeřábek, Ph.D. (09.09.2019)
  • BÖHMER, Marian. Návrhové vzory v PHP: [23 vzorových postupů pro rychlejší vývoj]. Brno: Computer Press, 2012. ISBN 978-80-251-3338-5.
  • LACKO, L. Web a databáze. Praha : ComputerPress, 2001.
  • POKORNÝ, J., HALAŠKA, I. Databázové systémy. Praha : ČVUT, 1997.
  • RICHTA, K., SOKOL, J. Softwarové inženýrství I. Praha : ČVUT, 1996.
  • RJORDAN, R. Vytváříme relační databázové aplikace. Praha : ComputerPress, 2000.
  • ROMAN, S. Návrh a programování databází. Praha : ComputerPress, 2000.
  • POKORNÝ, J. Základy implementace souborů a databází. Praha : Karolinum, 1997.
  • STRAKA, M. Vývoj databázových aplikací. Praha : Grada Publishing, 2000.
  • SKLAR, David. PHP 7: praktický průvodce nejrozšířenějším skriptovacím jazykem pro web. Přeložil Jan POKORNÝ. Brno: Zoner Press, 2018. Encyklopedie Zoner Press. ISBN 978-80-7413-363-3.
  • MASLAKOWSKI, M. Naučte se MySQL za 21 dní. Praha : Computer Press, 2001.
Sylabus
Poslední úprava: PhDr. Josef Procházka, Ph.D. (26.01.2023)
  • TEORIE VÝVOJE APLIKACÍ

    • Projektování vývoje, modely organizace vývoje aplikací.
    • Fázová organizace projektu, průběhové modely.
    • Proces návrhu, normalizace a implementace databáze.
    • Stěžejní zásady pro efektivní realizaci projektů.
    • Agilní metodiky vývoje

    SQL SERVER A KLIENT

    • Instalace SQL serveru. Odlišnosti v závislosti na použitém operačním systému (Windows, Linux).
    • Nastavení SQL serveru a automatizace jeho spouštění a zastavování.
    • Klienti pro SQL server - charakteristika, výběr a instalace. Terminálově orientovaný klient a klient využívající GUI pro přístup k SQL serveru.
    • Správa uživatelů. Nastavování přístupových práv k jednotlivým databázím, tabulkám a sloupcům. Otázky zabezpečení dat.
    • Zálohování databází a její automatizace (dump, cron).

    PRÁCE S DATY

    • DDL (Data Definition Language). Číselné a řetězcové datové typy, definice databáze a tabulky, identifikační klíče řádků tabulky, vztahy mezi tabulkami, kardinalita a parcialita vztahů, cizí klíče, integrita databáze, indexování dat.
    • DML (Data Manipulation Language). Obecné principy čtení a editace dat v SQL, otázky replikace databází a řízení transakcí.

    TVORBA APLIKACÍ

    • Základní charakteristika prostředí LAMP (Linux, Apache, PHP), výhody a nevýhody, dostupnost v podmínkách českých škol.
    • Editory a integrovaná vývojová prostředí (IDE). Textový editor ViM.
    • Možnosti využití databází ve webových aplikacích. Generování dynamických stránek pomocí skriptovacích jazyků.
    • Provázání webové aplikace s databázovým serverem
    • Zásady pro vývoj rozsáhlejších WWW aplikací. Konfigurovatelnost aplikace. Oddělení funkčních částí kódu a šablon vzhledu.
    • Modulové řešení realizace a administrace aplikací
    • Objektově orientovaná řešení vývoje databázových aplikací
    • Nástroje a zásady pro týmový vývoj aplikací (Subversion, CVS).

    ZABEZPEČENÍ DATABÁZOVÝCH APLIKACÍ

    • Integrita a zabezpečení dat
    • Škálovatelnost databázové aplikace
    • Ošetření proměnných předávaných ke zpracování SŘBD
    • Obrana proti nejčastějším formám útoku, SQL injection, Cross-site scripting (XSS) ...
Podmínky zakončení předmětu
Poslední úprava: PhDr. Josef Procházka, Ph.D. (26.01.2023)
  • Aktivní práce ve výuce, jejímž výsledkem je portfolio zdrojových kódů funkčních aplikací a konceptuálních návrhů databází.
  • Zpracování zápočtové práce ve formě funkční veřejně publikovatelné webové aplikace s administračním rozhraním. Není-li specifikováno v zadání jinak, požaduje se práce původní, vytvořená samostatně na základě uvedených informačních zdrojů a volně šiřitelných komponent.
  • Prokázání praktických dovedností a teoretických znalostí z oblasti návrhu a vývoje databázových aplikací formou řešení konkrétního zadání či testu.
Studijní opory
Poslední úprava: PhDr. Josef Procházka, Ph.D. (26.01.2023)

Studijní materiály pro distanční část na https://moodle.it.pedf.cuni.cz/course/view.php?id=2062

Klíč pro vstup do kurzu sdělí vyučující

 
Univerzita Karlova | Informační systém UK