Tvorba internetových aplikací
Kód | Zakončení | Kredity | Rozsah | Jazyk výuky |
---|---|---|---|---|
18INTA | KZ | 4 | 2P+2C | česky |
- Garant předmětu:
- Dana Majerová
- Přednášející:
- Jakub Klinkovský, Dana Majerová
- Cvičící:
- Jakub Klinkovský, Dana Majerová
- Předmět zajišťuje:
- katedra softwarového inženýrství
- Anotace:
-
Přednášky poskytují přehled moderních technologií pro tvorbu webových aplikací a blíže seznamují studenty se základními jazyky a principy WWW (HTML, URL apod.) a stručně také s relačními databázovými systémy. Na cvičeních jsou vytvářeny webové aplikace od jednoduchých ke složitějším. Předmět je zaměřen na backendové technologie a využití jazyka Python, ale prostor je věnován také frontendovým frameworkům a jazyku JavaScript.
- Požadavky:
-
Počítač s připojením na Internet a s prostředím jazyka Python. Předchozí zkušenost s programováním v jazyku Python není nutná, je však výhodou.
- Osnova přednášek:
-
1.Principy WWW, zásady tvorby webových stránek, jazyk HTML, úvod do CSS.
2.Přehled nástrojů a frameworků pro tvorbu statického obsahu.
3.Skriptovací technologie na straně klienta a na straně serveru, úvod do JavaScriptu.
4.Síťový model TCP/IP a protokol HTTP.
5.Prostředí jazyka Python a použití pro webové aplikace.
6.Objektově orientované programování a pokročilé vlastnosti jazyka Python.
7.Základy použití frameworku Django pro tvorbu webových aplikací.
8.Šablonový systém frameworku Django, mapování URL na pohledy.
9.Základy práce s relačními databázovými systémy, jazyk SQL a systém ORM.
10.Tvorba formulářů a bezpečné zpracování uživatelských dat.
11.Práce se soubory a adresáři na serveru, upload souborů na server.
12.Přidání stavu aplikace: cookies, session.
13.Bezpečnostní principy, zabezpečení webových aplikací a nasazení v praxi.
- Osnova cvičení:
-
1.Principy WWW, jazyk HTML, úvod do CSS.
2.Skriptovací technologie na straně klienta, úvod do JavaScriptu.
3.Obecné použití jazyka Python, interaktivní shell, spuštění základního web serveru.
4.Používání modulů a balíčků v jazyku Python.
5.Instalace frameworku Django, vytvoření prvního projektu.
6.Použití šablonového systému, mapování URL na pohledy.
7.Protokol HTTP, objekty HttpRequest a HttpResponse.
8.Práce s databází, systém objektově-relačního mapování.
9.Definice vlastních modelů a vytváření migrací pro změnu databáze.
10.Vytvoření formulářů a zpracování uživatelských dat.
11.Práce se soubory a adresáři na serveru, upload souborů na server.
12.Aplikace se stavem, správa cookies a session.
13.Zabezpečení aplikace a nasazení na serveru s veřejným přístupem.
- Cíle studia:
- Studijní materiály:
-
Povinná literatura:
[1] W. S. Vincent, Django for Beginners: Build Websites with Python and Django, WelcomeToCode 2020, ISBN 978-1735467207.
[2] M. Baker, Secure Web Application Development: A Hands-On Guide with Python and Django, Apress 2022, ISBN 9781484285954.
[3] B. Shaw, S. Badhwar, B. Chandra, C. Guest, Web Development with Django: A definitive guide to building modern Python web applications using Django 4, 2nd Edition, Packt Publishing 2023, ISBN 978-1803230603.
Doporučená literatura:
[1] W. S. Vincent, Django for APIs: Build web APIs with Python and Django, WelcomeToCode 2020, ISBN 978-1735467221.
[2] J. Kolouch, P. Bašta, CyberSecurity, CZ.NIC 2019, ISBN 978-80-88168-31-7. https://knihy.nic.cz/#cybersecurity
[3] D. Croxen-John, J. Van Tonder, Optimalizace webových stránek, Lingea 2022, ISBN 978-80-7508-716-4.
- Poznámka:
- Rozvrh na zimní semestr 2024/2025:
- Rozvrh není připraven
- Rozvrh na letní semestr 2024/2025:
- Rozvrh není připraven
- Předmět je součástí následujících studijních plánů:
-
- Aplikace informatiky v přírodních vědách (povinný předmět programu)
- Aplikovaná informatika (povinný předmět programu)
- Matematické inženýrství - Matematická informatika (volitelný předmět)