← Område 5 Lektion 34 · Terminsavslut Våren

Webbserverprogrammering 1 · område 5 · lektion 34

Fem områden, en kedja

Höstterminen har lärt ut. Vårterminen bygger. Den här sidan säger hur de fem områdena hänger ihop – inte som fem separata moment utan som en kedja där varje länk gjorde nästa möjlig – och vad som väntar i januari.

Missade du passet?

Lektion 34 var eget arbete med inlämningen, och sedan två genomgångar: den här sidan är de två genomgångarna. Läs den på tio minuter. Det viktiga att ta med sig står i avsnitt 5: du börjar aldrig om.

Inlämning 5 gick ut samma kväll. Har du inte lämnat in: gör de tre kontrollerna och lämna in så snart du kan – och säg till, så vet jag att den kommer.

1. Fem områden, en kedja

Läs tabellen med pilar bakåt. Varje rad var möjlig bara för att raden ovanför redan var gjord.

OmrådeVad du byggdeVad det gjorde möjligt
1En sajt som svarar på en förfråganAtt veta vad servern faktiskt gör
2C# på serversidan, en lista renderadAtt ha data att visa
3Komponenter, routing, layoutAtt listan kunde visas på två ställen
4Tjänster bakom gränssnittAtt datan kunde bytas ut
5Databas och formulärAtt datan blev verklig

Frågan som ställdes i salen: vilket av de fem områdena var jobbigast att se poängen med? Svaret blir område 4, varje år. Applikationen såg likadan ut när det var slut, och allt arbete låg i var koden hamnade.

Och det är precis det området som gjorde att område 5 tog tjugo minuter i stället för en dag.

2. Kursens viktigaste mening

Ni bytte ut hela datalagret och behövde inte ändra en enda komponent

Det var inte tur. Det var det ni gjorde i november.

Öppna ditt projekt och titta på det själv: IDittService ser likadant ut som i område 4, bortsett från metoden som sparar. Komponenterna som visar listan och detaljsidan är orörda. Det enda som ändrades var en klass – och den låg bakom ett gränssnitt just för att kunna ändras.

Den meningen bär hela vårterminen. Varje projekt i vår lägger till något bakom samma gränssnitt, och varje gång kommer komponenterna att klara sig.

3. Vårens fyra projekt

Terminen har varit genomgångar och mängdträning. Våren är projekt: samma applikation, större steg, längre deadlines. Alla deadlines går ut kl 23:59.

ProjektOmrådeVad som byggs
16. Datadriven applikationKategorientitet och relation, full CRUD, sökning och sortering med LINQ, inloggning och adminsidor
27. Säkerhet och kvalitetssäkringGranska och härda det du själv byggt
38. Driftsättning, API och externa dataApplikationen läggs upp så att andra kan nå den. Hämtar data från ett öppet API
49. SlutprojektEtt nytt projekt från grunden, åt en kund

Två prov ligger dagen efter projekt 1 och 2. Ett slutprov över hela kursen i juni. Vårterminen börjar onsdag 13 januari.

4. Vad som händer med det du har

Attributen i område 6. [Range] fångade inte det som skrevs rakt in i databasen – i område 6 skriver du ett eget valideringsattribut, och kopplar ihop din kategorientitet med din huvudentitet så att varje post hör till en kategori. Det du har nu är halva datamodellen.

Valideringen i område 7. Attributen fångar slarv. De fångar inte någon som medvetet försöker. Det området handlar om skillnaden – och du granskar det du själv byggt, inte något färdigt exempel.

Anslutningssträngen i område 8. Den ligger i appsettings.json och inte i koden av ett skäl: när applikationen driftsätts byts den ut utan att en enda kodrad ändras.

5. Regeln från och med nu

Du börjar aldrig om

Projektet du har i dag är det du lämnar in i mars, granskar i april och driftsätter i maj. Varje projekt bygger på det förra. Det finns ingen punkt där du får ett nytt, tomt projekt och slipper det gamla.

Det gäller inte slutprojektet, som är ett nytt bygge från grunden – och det är avsiktligt. I juni ska du kunna göra hela resan själv: från tomt projekt till driftsatt applikation med databas, validering och inloggning. Det är det de fem områdena har tränat.

Två saker att göra över lovet, om du vill ligga före: