Skip to main content
Dat 1. Semester
Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Back to homepage

Kollaborativ kodning i sprints

Rytmen i denne uge.

mandagtirsdagonsdagtorsdagfredag
LektionLektion*LektionSP3SP3

Afslutning af matador projektet onsdag Torsdag og fredag selvstændigt arbejde med SP3.

Fredag vil der være et vejledningsmøde på zoom. Se fredag for plan over vejledning.

Matador projektet uge 2.

I sidste uge har vi analyseret og designet Matadorspillet, og står nu med en række use-cases, sekvensdiagrammer og klassediagrammer. Sideløbende med analysen, tog vi fat i eksisterende kode, Game (incl. FileIO ogTextUI) som vi rettede lidt til, sådan at vi nu har fundamentet til et turbaseret spil, med brugerdialog og datapersistens.

Vi nåede også sidste del af use case 1, hvor spillepladen bliver bygget, samt use case 3, hvor spillerne slå med terning og rykker rundt på spillepladen.

Mandag

I gang med at bygge spillepladen. Derefter i gang med sprint5 (use case 3) hvor spilleren kaster en terning og rykker frem på brættet.

Det første kollaborative sprint, som kræver opdateringer i fem forskellige klasser. Vi fordeler arbejdet mellem teams, og mødes bagefter til code review, hvor vi merger ændringer ind.

Projektmål

Implementation af UC5 Spillere kan kaste terning og rykke rundt på brættet.

  • Vi har fundamentet til et turbaseret spil og en objekt repræsentation af spillepladen

Tirsdag

  • Sprint 5, hvor vi instantierer flere subklasser til Field.
  • Sprint 6, hvor vi skriver gameplay kode til UC4

Inden vi mødes på skolen i eftermiddag, kan undersøge hvad svarene er på disse spørgsmål om koden:

  1. Kan du ændre koden sådan at nye spillere starter med at have 30000 kr?

  2. Hvorfor siger Valby Langgade ingenting? I sekvensdiagrammet for UC3 slår en spiller 8 fra Start og lander på Valby Langgade. Gennemspil turen i hovedet: hvad skriver konsollen? Gør så det samme for en spiller, der lander på Tuborg Squash (felt 13). Hvorfor er de to udskrifter så forskellige, når begge felter er ejendomme? Bonus: hvorfor står der TuborgSquash5, uden mellemrum og med et 5-tal hæftet på? tip: du kan teste med bestemte felter ved at ændre linjen hvor terningkastet bliver sat:

int result = 12;//dice.rollDiceSum();
  1. Hvad koster Rådhuspladsen? Ifølge CSV-filen koster Rådhuspladsen 8000, og lejen er 1000. Følg den linje i fielddata.csv fra FileIO → Board.createFields → Plot → Property → Field. Når objektet er bygget, hvilken værdi står der så i Field.cost? Sker det samme for Scandlines og Coca-Cola?

  2. Test CardDeck koden I Board-konstruktøren har nogen udkommenteret linjen, der opretter CardDeck. Forudsig, hvad der sker, hvis du fjerner udkommenteringen af Chance.cardDeck = new CardDeck(carddata);. Ret så det problem, forudsig det næste, og fortsæt. Hvor mange forskellige fejl rammer du, før chancekortene virker?

  3. Hvem bestemmer, hvad man får for at passere Start? Tallet 4000 optræder tre steder: i fielddata.csv, i konstanten PERIODIC_INCOME og som en fast værdi i updatePosition. Lina står på felt 38. Hvor står hun, og hvad sker der med hendes saldo, hvis hun slår 2? Hvis hun slår 3? Derefter ændrer Drechslers medarbejdere Start-indkomsten i CSV-filen til 5000, hvilket kravene siger, de skal kunne. Hvad får Lina, næste gang hun passerer Start? (dette flaw er ikke let at fixe på en elegant måde i det nuværende design)

  4. Kan du lave en unitTest på updatePosition i Player klassen?

Projektmål

Implementation af UC4: landAndAct(Plot, Tax, Prison, Chance)

Onsdag

Vi har nu ret mange features, som er svære at teste gennem almindelig afvikling af spillet. Derfor skal vi til at skrive nogle testklasser. Vi skal bruge unit testing med junit, som I blev introduceret til for forrige fredag.

Sprint 8, mere gameplay kode.

Projektmål

Implementation af UC4: landAndAct(Shippingline, Brewery)

Forberedelse

Coding with John: unit testing

Træn unit testing

Test og find fejl i vores kode, og præsenter dem for afdelingen i morgen. Hvordan ? Se guide

Projektmål

  • vi kan teste spillet, og I kender nu koden så godt at I kan tilføje flere features og rette småfejl uden trinvise instruktioner.

Afslutning af projektet, evaluering, Grupper og gruppedynamik, gruppekontrakter SP3 opgaven.

Hvis I er en meget lille gruppe eller har andre grunde til det, kan I lave en miniudgave af SP3. Dette skal aftales med en underviser.

Torsdag

SP3: Selvstændigt arbejde i grupper.

Fredag

SP3: Selvstændigt arbejde i grupper.

Skemalagt vejledning:

I forbindelse med dagens vejledning kommer vi ind på hvor I er i processen og har især fokus på jeres løsningsdesign, så hav domænemodel, use-cases og evt. klassediagrammet parat.

Vejleder10:3010:4511:0011:1511:3011:4512:0012.15
TessABCFGHJD

Vejledningen foregår på zoom.

Tess zoomlink