DevOps akademija - Modul 2 - Web development - frontend
četrtek, 09. november, 2023
Uvod
V sklopu projekta European Software Skills Alliance (ESSA) je na voljo DevOps akademija, ki je sestavljena iz niza šestih modulov, s katerimi boste pridobili znanje iz izbranih področij ESSA študijskega programa Junior DevOps Expert.






Gradivo v tej skripti se osredotoča na prvi tečaj Web development - frontend, ki ga v obdobju od 6. 11. 2023 do 24. 11. 2023 izvaja izr. prof. dr. Dejan Lavbič na Fakulteti za računalništvo in informatiko, Univerze v Ljubljani.

V okviru tečaja bodo udeleženci spoznali celostni razvoj spletne aplikacije s poudarkom na čelnem delu sistema. Na problemski domeni, ki so jo udeleženci izbrali pri predhodnem tečaju, in že razvili zaledni del, bomo nadaljevali z razvojem uporabniškega vmesnika ter vključili predhodno razvite komponente zalednega dela. Z uporabo modernih ogrodij za razvoj spletnih aplikacij bomo implementirali interaktivno aplikacijo na eni strani (angl. Single Page Application (SPA)), ki se bo v celoti izvajala na strani odjemalca in z zalednim delom komunicirala preko REST API vmesnika. Pri razvoju bomo izkoristili vse prednosti okolja spletnega brskalnika in predstavili načine za bolj učinkovit razvoj in testiranje spletnih aplikacij. Z varnostnega vidika bomo aplikacijo zaščitili tudi na strani odjemalca, in sicer z vključitvijo preverjanja istovetnosti identitete z uporabo žetonov JWT, ki smo jih vpeljali že na zalednem delu v okviru predhodnega projekta.
Splošne informacije
Dodatno gradivo pri tečaju je na voljo v okviru GitHub organizacije UL FRI DevOps Web Development, medtem ko bo komunikacija potekala preko Discussions v okviru prej omenjene GitHub organizacije.
Terminski plan izvajanja tečaja
Vsebina pri predmetu je razdeljena na naslednja sklopa:
- 1. sklop : Uporabniški vmesnik z ogrodjem Angular in razvojem SPA in
- 2. sklop : Dodatne funkcionalnosti z avtentikacijo in avtorizacijo na strani odjemalca, varnostjo in PWA.
Tečaj poteka od ponedeljka, 6. 11. 2023 do petka, 24. 11. 2023, kjer je organizacija naslednja:
- prvi teden: predavanja in vaje v obsegu 20 šolskih ur (\(20 \times 45\ \text{min}\)) (v živo na UL FRI),
- termin: od ponedeljka, 6. 11. 2023 do četrtka, 9. 11. 2023 (4 termini po 5 šolskih ur - 3 šolske ure predavanj in 2 šolski uri vaj),
- 12:00 - 13:00 (1. del predavanj)
- 13:00 - 13:05 (odmor)
- 13:05 - 14:20 (2. del predavanj)
- 14:20 - 14:30 (odmor)
- 14:30 - 16:00 (vaje in “hands-on” delo na projektu)
- lokacija: učilnica Akademija FRI, UL FRI, Večna pot 113, 1000 Ljubljana,
- termin: od ponedeljka, 6. 11. 2023 do četrtka, 9. 11. 2023 (4 termini po 5 šolskih ur - 3 šolske ure predavanj in 2 šolski uri vaj),
- drugi teden: samostojno projektno delo na izbranih in predhodno potrjenih vsebinah (na daljavo),
- tretji teden: predstavitev, pregled in ocenjevanje projektov ter izvedba pisnega preverjanja znanja (v živo na UL FRI).
| Termin | Vodeno delo | Samostojno delo |
|---|---|---|
|
1. teden |
|
|
|
2. teden |
- |
|
|
3. teden |
|
|
Pravila igre
Predavanja
Predavanja v okviru tečaja bodo praktično usmerjena, saj bomo demonstrirali celostni razvoj programske opreme na izbranem primeru od začetne ideje do delujoče različice, ki jo bomo tudi gostili na javnem spletnem naslovu. V okviru tega tečaja bomo razvili uporabniški vmesnik na strani odjemalca v obliki SPA aplikacije na eni strani in se povezali na REST API z dostopom na podatkovno bazo, kar smo razvili v predhodnjem tečaju.
Izvorna koda primerov s predavanj je na voljo v repozitoriju UL-FRI-DevOps-WebDevelopment/Snippets, demo aplikacije, ki jo bomo razvijali na predavanjih, pa v repozitoriju UL-FRI-DevOps-WebDevelopment/Demo.
Vaje
Osrednji cilj vaj je pomoč pri razvoju lastnega projekta (LP), ki ga bo vsak udeleženec, na izbrani problemski domeni, samostojno razvijal od začetka do delujoče različice. Na vajah bodo potekale predvsem konzultacije glede razvoja lastnega projekta in v 3. tednu tudi zagovor lastnega projekta (LP):
- LP - Dinamična spletna aplikacija na strani strežnika in odjemalca,
- 1. del - uporabniški vmesnik, SPA in avtentikacija,
- 2. del - varnost in testiranje.
Povzetek funkcionalnih zahtev je prikazan na spodnji sliki, kjer so izpostavljene funkcionalnosti, ki jih boste razvili v okviru tega tečaja, medtem ko se ste preostale razvili že pri 1. tečaju.
Naloge boste oddajali v elektronski obliki preko elektronske pošte, sistema GitHub in povezave na delujočo aplikacijo. Lastni projekt boste zaključili v 2. tednu tečaja samostojno doma in ga boste zagovorili v 3. tednu, kot je predvideno v terminskem planu izvajanja tečaja.
Priporočena literatura
|
|
|
|
|
|
|
|
|
|
|
|






