Architektury webových aplikací
V dnešní době se můžeme setkat s řadou různých architektur používaných pro vývoj webových aplikací. My se zaměříme na: monolitickou a microservices architekturu.
Většina webových aplikací se skládá ze tří částí: uživatelského rozhraní, logiky aplikace a datového rozhraní.
Monolitická
Monolitická architektura, jak její název napovídá, je architektura, kde uživatelské rozhraní, logika aplikace a datové rozhraní tvoří jeden celek.
Udržení pořádku
Pro potřeby udržení pořádku adoptujeme jednoduchou MVC architekturu. Jedná se o velmi triviální, ale pro naše potřeby dostatečný, příklad demonstující dělení na model, view a controller.
Plnohodnotné řešení by zahrnovalo ORM systém (za předpokladu, že by měl smysl) a šablonovací systém.
Microservices

Webové API
Webové API je API, které využívá pro komunikaci protokol HTTP (či HTTPS). Typicky je realizováno jako backend s žádným nebo jednoduchým frontendem a veřejně dostupnými endpointy. Endpoint představuje rozhraní, které je využito pro spuštění požadované funkcionality.
Nejběžněji se můžeme setkat s REST API a GraphQL API architekturou.
REST

Zadání
-
úkol 1
Upravte administrační rozhraní z předchozích seminářů tak, aby používalo MVC architekturu.
-
úkol 2
Napište jednoduchou REST API službu uchovávající seznam uživatelů (id, name, surname) v session. Vstupní body služby jsou následující.
vstupní bod popis get
vrátí seznam všech uživatelů v CSV formátu get/id
vrátí uživatele s daným id
v CSV formátupost
uloží uživatele (data jsou předána skrze HTTP POST požadavek (klíče id
,name
asurname
)update/id
změní uživatele s daným id
(data jsou předána skrze HTTP POST požadavek (klíčename
asurname
)delete/id
smaže uživatele s daným id
-
úkol 3 (dobrovolný)
Upravte API z předchozího úkolu tak, aby se seznam uživatelů ukládal do souboru.