07 Backend
Mandagsreview
- Læs lidt om hvad Javalin er og hvorfor vi bruger netop dette web framework.
- Læs denne korte beskrivelse af The request/response cycle dvs. hvordan frontend (browser) og backend (web server) kommunikerer over HTTP protokollen.
- Læs om MVC (Model, View, Control), en måde at strukturere sin web applikation.
- Kør denne tutorial igennem Creating a brand new Javalin web project in IntelliJ, og se om du kan få hul igennem til Javalin.
- Se denne video om tilstandsdiagrammer (18:04)
Vi går i gang med at implementere en simpel backend til et Message Board system, helt fra bunden. Det giver os en praktisk tilgang til Javalin, MVC, Thymeleaf (frontend) og meget mere. Idéen er at demonstrere, hvordan man udvikler en full-stack web-applikation fra start til slut.
Vi starter helt lavpraktisk med at få et Javalin projekt i gang i IntelliJ, så vigtigt at du har kørt tutorial hjemmefra. Og hvis det drillede, fikser vi det sammen - men gør et forsøg, inden dagens undervisning :-)
Til dagens CodeLab skal I arbejde videre på MessageBoard systemet. Vi kommer til at kigge på bruger sessions og hvordan vi sender data fra server til html sider.
I har også mulighed for sideløbende at udvikle en lille webapplikation fra start til slut. Her er link til opgave beskrivelsen:
Jon har lavet en video-serie til projektet. Det er på ingen måde obligatorisk at se det hele, den er tiltænkt som en hjælp, såfremt I skulle have brug for det (den indeholder mange af de ting vi har brug for i enhver webapp):
Vi samler op på det, som vi har lavet indtil videre på Message Board systemet og laver en plan for det videre forløb.
Du kan vælge at arbejde på en eller af flere af disse muligheder resten af ugen:
- Byg videre på vores fælles løsning af Message Board systemet. Se tjekliste for inspiration til nye features.
- Byg din egen udgave af Message Board systemet helt fra bunden. God til repetition og at sætte din kreativitet fri :-)
- Byg Four Things Plus, som har en fin videoserie at støtte sig til. Det er den mest begyndervenlige mulighed, hvis du synes at det har været en fagligt svær uge.
- Byg noget helt andet, du har arbejdet med i frontend ugerne. F.eks. Car Pool webapp. Stræb efter på at komme igennem flg. features i din løsning:
- Opret bruger
- Login /Logud
- CRUD
- Listevisning
Bemærk at begge hold har undervisning kl 9.00-12.30. Tiden efter frokost er der mulighed for vejledning.
Arbejd videre med din valgte web app og forbered præsentation til mandag. Når ugen er om, skal du gerne været nået igennem de grundlæggende elementer:
- Starte server på
localhost:7070 - Hente og gemme data i Postgres database via web applikation
- Dynamisk HTML med
formog Thymeleaf engine - Endpoints og routing:
- HTTP
GETogPOST renderogredirectformParam,attribute,sessionAttribute
- HTTP
Her er en samling af links til nyttige ressourcer om Javalin og backend-udvikling.