Webbserverprogrammering 1 · område 3 · lektion 15–16
Välj din domän
Fram till nu har du övat på en engångsklass som hette
Produkt. Nu bestämmer du vad ditt projekt handlar om på riktigt.
Valet bär du till och med område 8 – genom komponenter, tjänster, databas, CRUD,
inloggning, säkerhetsgranskning och driftsättning.
- 13 okt Valet ska vara gjort till lektion 16 En mening: vad domänen är, vad huvudentiteten heter, vad kategorin är.
1. Varför nu
Valet ligger här och inte tidigare av två skäl.
Det första är att du nu vet tillräckligt för att kunna välja. Efter område 2 vet du vad en klass är, vad en lista med objekt gör och vad du faktiskt orkar skriva kod för. Ett val i augusti hade varit en gissning.
Det andra är att område 3 är sista tillfället då bytet är gratis. Här finns bara en hårdkodad lista att skriva om. I område 5 finns en databas, migrationer och formulär som hänger på entiteten – att byta domän där kostar en vecka.
Guiden bygger Filmarkivet med komplett kod. Väljer du filmer blir din inlämning en avskrift, och det är inte en gråzon – det är samma sak som att lämna in min kod.
Strukturen ska vara identisk med guidens. Innehållet ska inte vara det. Det är översättningen mellan dem som visar att du förstått, och det är den jag rättar.
2. Sju krav
Stäm av din idé mot listan innan du bestämmer dig. Kryssen sparas i din webbläsare.
Min domän klarar alla sju
Fem av sju räcker inte. Varje krav svarar mot ett område längre fram, och det som fattas nu fattas då.
3. Åtta förslag
Alla åtta klarar samtliga sju krav. Du får ta ett rakt av – de är till för att du ska kunna lägga tiden på koden i stället för på idén.
| Domän | Huvudentitet | Kategori | Samling | Söka på | Sortera på |
|---|---|---|---|---|---|
| Brädspelshyllan | Spel | Kategori | Önskelista | Titel | Speltid |
| Receptsamlingen | Recept | Kök | Veckomeny | Namn | Tillagningstid |
| Växtdatabasen | Växt | Familj | Odlingsplan | Namn | Höjd |
| Vinylarkivet | Skiva | Genre | Spellista | Titel | Utgivningsår |
| Klätterförarna | Led | Klippa | Projektlista | Namn | Svårighetsgrad |
| Träningsloggen | Pass | Passtyp | Veckans pass | Namn | Längd |
| Bilregistret | Modell | Märke | Jämförelselista | Modellnamn | Årsmodell |
| Konsertkalendern | Konsert | Scen | Bevakningar | Artist | Datum |
Betyget sätts på koden, inte på idén. En genomarbetad brädspelshylla ger ett högre betyg än en originell domän som faller isär i område 6. Lägg femton minuter på valet, inte tre kvällar.
4. En egen idé
Du får hitta på din egen. Stäm av mot de sju kraven först, och svara sedan på de här fyra frågorna innan du bestämmer dig:
- Kan du skriva sex poster på tio minuter, utan att slå upp något? Behöver du googla varje post kommer du att undvika projektet.
- Vad heter kategorin? Kan du inte svara med ett ord finns den inte.
- Vad lägger en besökare undan? Är svaret "ingenting" saknas samlingen, och område 4 blir konstlat.
- Vem loggar in, och vad gör hen då? Svaret ska vara mer än "ändrar saker".
5. Det som brukar fälla ett val
| Val | Vad som fattas | När det smäller |
|---|---|---|
| "Mina vänner" | Ingen kategori, ingen samling, och personuppgifter om riktiga människor | Område 4 och 6 |
| "Todo-lista" | Inget beskrivningsfält som motiverar en detaljsida | Redan här, i område 3 |
| "Mina skor" | Sex poster går, sextio gör det inte. Sökning och sortering blir meningslösa | Område 6 |
| "Ett spel" | Är ingen katalog. Kursen bygger en katalogapplikation, inte vad som helst | Område 5 |
| "Länkar jag gillar" | För få fält. Ett namn och en adress är två, inte fem | Område 3 och 5 |
| Filmer | Inget – det är guidens domän, och då blir din kod en avskrift | Vid rättningen |
6. Så lämnar du valet
Två saker, och båda tar en minut.
- Säg det på lektion 16. En mening: vad domänen är, vad huvudentiteten heter, vad kategorin är. Jag godkänner på plats eller säger vad som fattas.
- Skriv det i projektets
README.md. Det är ett krav i inlämningen.
Så här räcker det att det ser ut:
Vinylarkivet. Huvudentitet: Skiva. Kategori:
Genre. Samling: spellista. Söker på titel, sorterar på
utgivningsår. Bakom inloggning: lägga till och ta bort skivor.
När valet är gjort öppnar du guidens översättningstabell och fyller i högerkolumnen. Den är kartan mellan mitt Filmarkiv och ditt projekt, och du kommer att gå tillbaka till den i varje område som återstår.