2017 januari examen
Vraag 1:
Gegeven een uitleg en een uitgebreid UML van een winkelapplicatie
- Geef twee patronen die in het compound patroon MVC gebruikt worden
- Duid deze aan op het UML
- Geef voor elke klasse van het UML aan of het Model, View or Controller deel is
- Stel een gebruiker besteld een product geef een lijst van de opeenvolgende klasse en methodes die worden gebruikt om dit uit te voeren (en geef nummers aan in het UML)
Vraag 2:
Gegeven een uitleg, state chart diagram, een test en output van een poort in een metrostation. Geef de code voor de toegangspoort en de states om de gegeven output van de test te krijgen. (Dit is ongeveer de opgave, maar herinner mij niet meer 100%) Statechart:
Test:
ToegangsPoort poort = new Toegangspoort();
poort.scan(new ToegangsBewijs(7));
poort.doorlopen();
//Geldig toegangsbewijs scannen en doorlopen
poort.scan(new ToegangsBewijs(0));
poort.doorlopen();
//Geen beurten meer
poort.doorlopen();
//doorlopen zonder te scannen
ToegansBewijs bewijs = new ToegangsBewijs(4);
poort.scan(bewijs);
poort.scan(bewijs);
poort.doorlopen;
//2 keer achter elkaar scannen
poort.afsluiten();
poort.scan();
Output:
"Geldig bewijs - Loop door"
"Reiziger loopt door"
"Geen beurten meer"
"ALARM!"
"ALARM!"
"Geldig bewijs - Loop door"
"Terugbetaling gebeurt"
"Reiziger loopt door" (Denk dat dit een fout is, heb ook zo op het examen gezegd anders kun je gewoon 2 keer scannen en gratis doorlopen)
"Einde van de dag - aantal Reizigers: 4" (Is hoevaak er gescand is, maar eigenlijke aantal reizigers is 2, ook een fout denk ik...?)
"Metrostation is dicht"
Vraag 3:
Gegeven een sort methode:
public Person [] sort(Person[] persons, String sortalgoritme, Comparator<Persons> comparator) {
Person[] sortedpersons = persons;
if (sortalgoritme.equals("Quick") {
//sort using quicksort algoritme
}
if (sortalgoritme.equals("Random") {
//sort using randomsort algoritme
}
return sortedPersons;
}
- Welk principe wordt hier het meest geschonden?
- Hoe zou je het beter doen en teken UML class diagram.