PředmětyPředměty(verze: 963)
Předmět, akademický rok 2013/2014
  
Webové aplikace - N445059
Anglický název: Web Applications
Zajišťuje: Ústav počítačové a řídicí techniky (445)
Fakulta: Fakulta chemicko-inženýrská
Platnost: od 2013 do 2013
Semestr: zimní
Body: zimní s.:5
E-Kredity: zimní s.:5
Způsob provedení zkoušky: zimní s.:
Rozsah, examinace: zimní s.:2/3, KZ [HT]
Počet míst: neomezen / neomezen (neurčen)
Minimální obsazenost: neomezen
Stav předmětu: vyučován
Jazyk výuky: čeština
Způsob výuky: prezenční
Způsob výuky: prezenční
Úroveň:  
Další informace: http://moodle.vscht.cz/course/view.php?id=106
Garant: Nachtigalová Iva Ing. Ph.D.
Vovsík Jaroslav Ing. Ph.D.
Termíny zkoušek   Rozvrh   
Anotace -
Předmět je zaměřen na vývoj dynamických webových aplikací pomocí triády open source technologií Apache - MySQL - PHP. Předmět nejprve seznamuje studenty s HTTP komunikací a současnými technologiemi aplikací v prostředí Internetu, poté se zaměřuje na základy (příkazy jádra, pro generování výstupu, pro manipulaci s databází atd.) i pokročilé techniky (obsluhování sezení, autentizaci uživatelů apod.) programování kódu aplikací v serverovém skriptovacím jazyce PHP, jejichž data se ukládají a dynamicky načítají do/z databázového serveru MySQL. Předmět také pomáhá studentům získat nezbytné znalosti pro provoz aplikací v prostředí webového serveru Apache, pro zajištění vybraných funkcí na straně prohlížeče pomocí klientského skriptovacího jazyka JavaScript a také pro optimalizaci aplikací pro vyhledávače (SEO).
Poslední úprava: Nachtigalová Iva (09.11.2012)
Výstupy studia předmětu -

Studenti budou umět:

  • programovat pokročilé funkce webových aplikací v serverovém skriptovacím jazyce PHP
  • používat webové aplikace programované v PHP společně s databázovým serverem MySQL pro ukládání/načítání dat
  • programovat vybrané funkce webových aplikací v klientském skriptovacím jazyce JavaScript
  • optimalizovat aplikace a jejich zveřejňovaný obsah pro vyhledávače (SEO)

Poslední úprava: Nachtigalová Iva (09.11.2012)
Deskriptory -

www, web, aplikace, HTTP, skriptovací jazyk PHP, databáze MySQL, Apache, skriptovací jazyk JavaScript, XHTML, CSS, optimalizace pro vyhledávače SEO

Poslední úprava: Nachtigalová Iva (09.11.2012)
Literatura -

Z: Bowen, R. - Coar, K.: Apache Cookbook: Solutions and Examples for Apache Administrators. 2. vydání. O'Reilly Media: January 2011. 310 s. ISBN-10: 0596529945.

Z: Darie, C. - Sirovich, J.: SEO v PHP - Programujeme profesionálně. Computer Press: Brno, 2008. 384 s. ISBN: 978-80-251-2083-5.

Z: Gilmore, W. J.: Velká kniha PHP a MySQL 5 - kompendium znalostí pro začátečníky a profesionály. 3. vydání. Zoner Press: Brno, 2011. 736 s. ISBN: 978-80-7413-163-9.

Z: Yank, K. - Adams, C.: Začínáme s JavaScriptem. 3. vydání. Zoner Press: Brno, 2008. 336 s. ISBN: 978-80-86815-94-7.

D: Bernd, Ö. - Kofler, M.: PHP 5 a MySQL 5 - průvodce webového programátora. Obsahuje CD. Computer Press: Brno, 2007. 608 s. ISBN: 978-80-251-1813-9.

D: Kabir, J. M.: Apache Server 2 - kompletní příručka administrátora. Computer Press: Brno, 2004. 722 s. ISBN: 80-251-0319-6.

D: Dover, D. - Dafforn, E.: SEO - Optimalizace pro vyhledávače profesionálně. Zoner Press: Brno, 2012. 400 s. ISBN: 978-80-7413-172-1.

D: Zakas, J. M.: JavaScript pro webové vývojáře - programujeme profesionálně. Computer Press: Brno, 2009. 832 s. ISBN: 978-80-251-2509-0.

Poslední úprava: Nachtigalová Iva (09.11.2012)
Metody výuky -

Předmět je 5hodinový. Na dvouhodinovou přednášku tématicky navazují tříhodinová cvičení v počítačové učebně, kde studenti pod vedením vyučujícího a s pomocí přednášek, literatury a studijních opor řeší dílčí úlohy a postupně metodou krok za krokem vytváří vzorovou webovou aplikaci typu blog. Každý student pracuje na svém počítači, zároveň se však pravidelně střídá s ostatními u počítače vyučujícího a aktivně se podílí na vypracování zadání svými znalostmi a schopnostmi, které může v diskuzi konfrontovat se znalostmi a schopnostmi ostatních studentů. V rámci cvičení si studenti osvojují práci s on-line zdroji, analyzují kódy atd.

Podklady k jednotlivým přednáškám a cvičením se nacházejí ve studijním systému Moodle na adrese http://moodle.vscht.cz/course/view.php?id=106.

Poslední úprava: Nachtigalová Iva (09.09.2013)
Sylabus -

  1. HTTP protokol - schopnosti verzí protokolu, model komunikace, struktura požadavků a odpovědí, HTTP metody, hlavičky, stavové kódy.
  2. Technologie a prostředky tvorby a provozování dynamických webových aplikací - klientské technologie, serverové technologie, jazyk PHP, server Apache, základní konfigurace.
  3. Úvod do jazyka PHP - lexikální struktura, datové typy, konstanty, proměnné, (superglobální) pole, příkazy pro řízení běhu kódu, interpetace řetezců, vnořování souborů, vestavěné a vlastní funkce.
  4. Pokročilé schopnosti PHP - práce s poli, práce s časovými údaji, práce s řetězci, regulární výrazy, základy i pokročilé schopnosti OOP, práce se souborovým a operačním systémem.
  5. Používání PHP s databází MySQL - práce s rozšířením mysqli, příprava připojení a jeho ukončení, obsluha chyb připojení, interakce s databází, dotazy a rozklad výsledků dotazu. Webový klient phpMyAdmin.
  6. Formulářové prvky v XHTML. Předávání dat na webserver - metoda GET, metoda POST, odesílání dat, zpracování dat v PHP.
  7. Udržování stavových informací - metoda cookies, struktura, přijímaní a odesílání z/v PHP, metoda session, SID a způsoby předávání, session proměnné, obsluha session v PHP, HTTP autentizace, formulářová autentizace v PHP.
  8. Úvod do jazyka JavaScript - lexikální struktura, datové typy, konstanty, proměnné, pole, příkazy pro řízení běhu kódu, vlastní funkce.
  9. Pokročilé schopnosti JavaScriptu - klientská část jazyka, propojení s hypertextovými dokumenty, BOM a DOM, hierarchie objektů, práce s uzly DOM, práce s cookies, práce s CSS, obsluha formulářů, ošetřování událostí.
  10. Bezpečnost webových aplikací - příčiny zranitelnosti, útoky přes všechny vstupy, útoky přes cookies a session cookie, útoky zneužívající chyby technologií, sociální inženýrství.
  11. Bezpečnost webových aplikací - prolamování hesel, formulářové spamy, metody ochrany.
  12. Architektura webových aplikací, šablonovací systémy, systém SMARTY, systémy Model-View-Controller (MVC), funkce jednotlivých částí.
  13. Optimalizace pro vyhledávače - objasnění vyhledávání vyhledávači, indexování, sestavování výsledků, hodnotící faktory, optimalizace on-page a off-page faktorů, doporučené techniky, XML mapy.
  14. Vývoj dynamické webové aplikace typu blog.

Poslední úprava: Nachtigalová Iva (09.11.2012)
Studijní opory -

The PHP Group: PHP Manual [on-line]. Dokumentace s mnoha ukázkami kódu skriptovacího jazyka PHP. Jazyk: angličtina. [cit. 9. 11. 2012] Dostupné na Internetu: http://www.php.net/manual/en/.

The Apache Software Foundation: Apache HTTP Server Documentation [on-line]. Dokumentace k různým verzím HTTP serveru Apache. Jazyk: angličtina. [cit. 9. 11. 2012] Dostupné na Internetu: http://httpd.apache.org/docs/.

Čihař, M.: Přehled článků na Linuxsoft.cz v kategorii phpMyAdmin [on-line]. Série článků o prácis s webovým klientem phpMyAdmin, který slouží k návrhu a administraci databází MySQL přes webové rozhraní. Jazyk: čeština. [cit. 9. 11. 2012] Dostupné na Internetu: http://www.linuxsoft.cz/article_list.php?id_kategory=215.

Interval.cz: Programování [on-line]. Kategorie článků jak o programování kódu webových aplikací mj. v jazycích PHP a JavaScript, tak o databázových systémech, se kterými webové aplikace často spolupracují [cit. 9. 11. 2012]. Jazyk: čeština. Dostupnost na Internetu: http://interval.cz/programovani/.

Refsnes Data: w3schools.com - the world's largest web development site [on-line]. Web o technologiích tvorby statických i dynamických webových stránek mj. s mnoha ukázkami kódů PHP i JavaScriptu [cit. 9. 11. 2012]. Jazyk: angličtina. Dostupnost na Internetu: http://w3schools.com/.

Poslední úprava: Nachtigalová Iva (09.11.2012)
Vstupní požadavky -

Studium předmětu přepokládá

  • znalost tvorby validních, "well-styled", použitelných a přístupných hypertextových dokumentů v jazycích XHTML a CSS (vytváření obsahu pomocí sémantických a strukturálních prvků podle standardu, vytváření layoutů a formátování textu, pozadí, písma, odkazů, seznamů a tabulek pomocí kaskádových stylů podle standardu, znalost zásad a XHTML a CSS technik zlepšujících přístupnost dokumentů, znalost zásad tvorby použitelných webů)
  • znalost aspektů návrhu jednoduchých databází (datových typů, relačního modelu dat, primárních a cizích klíčů) a použití SQL dotazů pro interakci s databázemi (příkazů pro tvorbu a úpravu schémat a pro vkládání, získávání, úpravu a mazání dat)

Požadované vstupní znalosti lze získat absolvováním předmětů uvedených v Studijních prerekvizitách.

Poslední úprava: Nachtigalová Iva (12.09.2013)
Studijní prerekvizity -

Databázové systémy, Webdesign I

Poslední úprava: Nachtigalová Iva (13.02.2018)
Zátěž studenta
Činnost Kredity Hodiny
Účast na přednáškách 1 28
Příprava na přednášky, semináře, laboratoře, exkurzi nebo praxi 1 28
Účast na seminářích 1 28
3 / 5 84 / 140
Hodnocení studenta
Forma Váha
Průběžné a zápočtové testy 50

 
VŠCHT Praha