|
Vyučující
|
|
|
|
Obsah předmětu
|
Obsah a osnova předmětu: 1. Úvod - síťové prostředí a jeho možnosti, přehled přístupů ke komunikaci internetových aplikací 2. Základní technologie pro návrh internetových aplikací - www, programovací jazyky a jejich verze, vývojová prostředí 3. Tvorba obsahu pro WWW - HTML, Javascript 4. Tvorba obsahu pro WWW - CSS, preprocesory 5. Asynchronní a synchronní řešení na straně serveru - principy, rozdíly, Node.js, Java, python 6. Komunikace mezi aplikacemi a jejich komponentami - AJAX a Long-polling 7. Komunikace pomocí WebSockets 8. Další techniky komunikace - sockets, streaming, WebRTC 9. Pokročilá API a síťové služby a komunikace s nimi - standardy, principy, praktické užití v různých případech 10. Virtualizace internetových aplikací - cloudová a kontejnerová řešení, komplexní systémy 11. IoT a specifika internetových řešení na jejich základě 12. Identity management 13. Role based access control Obsah cvičení: 1. - 2. Tvorba WWW - návrh konkrétních řešení na bázi HTML, CSS, javascript. 3. - 4. Návrh aplikací skomunikací mezi komponentami - AJAX, Websockets. 5. - 6. Serverová řešení - práce sNode.js, příklady užití, implementace serveru služby, nástroj NodeRed. 7. - 8. Návrh API - návrh vlastní síťové služby sdůrazem na API, Užití existujících API ve vlastních aplikacích. 9. - 10. Návrh řešení na edge zařízení - užití Raspberry Pi a ESP 32 pro běh síťových služeb. 11. - 12. Kontejnerová řešení - implementace služeb vnástroji Docker, praktické příklady. 13. Návrh vlastního systému pro správu přístupů na bázi RBAC.
|
|
Studijní aktivity a metody výuky
|
Monologická (výklad, přednáška, instruktáž), Dialogická (diskuze, rozhovor, brainstorming), Demonstrace, Praktická výuka
- Účast na výuce
- 56 hodin za semestr
- Příprava na zkoušku
- 26 hodin za semestr
- Domácí příprava na výuku
- 48 hodin za semestr
|
|
Výstupy z učení
|
Cílem předmětu je poskytnout studentům znalosti související s návrhem a chodem síťových aplikací. Důraz je v rámci přednášek i cvičení kladen na nejrozšířenější postupy a technologie, aby studenti byli schopni je uplatnit v praxi. Tématicky se předmět soustřeďuje zejména na rychlé prototypování, komunikaci, bezpečnostní prvky a efektivní chod internetových aplikací.
Po absolvování předmětu bude student schopen efektivně využívat moderní technologie pro provoz webu. Rovněž bude schopen navrhovat aplikace využívající vhodnou síťovou komunikaci a integrovat do navrhovaných aplikací i další služby dostupné na Internetu. V oblasti bezpečnosti bude student mít znalosti z oblasti správy identit a nastavení bezpečnostních omezení na základě rolí včetně jejich integrace do vlastních aplikací.
|
|
Předpoklady
|
Předpokladem pro tento předmět je úspěšné absolvování předmětu OBP I a II
|
|
Hodnoticí metody a kritéria
|
Písemná zkouška, Rozbor produktů pracovní činnosti studenta (technické práce), Test, Průběžné hodnocení
Pro úspěšné absolvování předmětu je potřeba řešit průběžné úkoly ve cvičeních, a absolvovat teoretický test a absolvovat ústní zkoušku. Na řádném a opravném termínu zápočtu, stejně jako na každém termínu zkoušky jsou zakázány všechny pomůcky, kromě těch, které jsou povoleny vyučujícím.
|
|
Doporučená literatura
|
-
GEEWAX, John J. API design patterns. Simon and Schuster, 2021.
-
GOUGH, James; BRYANT, Daniel; AUBURN, Matthew. Mastering API architecture: design, operate, and evolve API-based systems. O'Reilly Media, Inc.". 2021.
-
HASSAN, Qusay F. (ed.). Internet of things A to Z: technologies and applications. John Wiley & Sons, 2018.. ISBN 9781119456773.
-
HERRON, David. Node. js Web Development: Server-side web development made easy with Node 14 using practical examples. Packt Publishing Ltd. 2020.
-
KANE, Sean P.; MATTHIAS, Karl. Docker: Up & Running: Shipping Reliable Containers in Production. O'Reilly Media, 2018.. ISBN 9781492036746.
-
KUMAR, Akshi. Web Technology: Theory and Practice. CRC Press, 2018. ISBN 9781351029896.
-
LAURENČÍK, Marek. Tvorba www stránek v HTML a CSS. Grada Publishing as., 2019.
-
W3Schools. Online web tutorials.
|