Track 2 - Oefenopdracht - Dobbelsteen: Vervolg¶
Codelab¶
Beschrijving¶
Dit is een vervolg op de Dobbelsteen van Track 1. We gaan verder werken in het project dat je daar hebt gemaakt.
- Verbeter je klasse
Dobbelsteendoor encapsulation toe te passen. - Maak een methode
gooiTotDubbel()die twee dobbelstenen gooit tot er dubbel is gegooid. - Test de nieuwe functionaliteit in de
index.ts.
Hieronder een voorbeeld van input/output van deze applicatie. Input die de gebruiker invoert is onderstreept.
Voorbeeld¶
Welk karakter moet ik gebruiken voor het oog: @
Worp: 1
___
| |
| @ |
| |
---
___
|* *|
| * |
|* *|
---
Worp: 2
___
|@ @|
|@ @|
|@ @|
---
___
|* *|
|* *|
|* *|
---
Dubbel gegooid!
Klassendiagram¶
Onderstaand diagram vat de structuur van de class samen:
classDiagram
class Dobbelsteen {
-_worp: number
-_karakter: string
+constructor(karakter: string)
+gooi() void
+print() void
+getWorp() number
}
Stappenplan¶
- Maak een kopie van je code van de Dobbelsteen uit Track 1 en open deze voor bewerking.
- Verbeter je klasse
Dobbelsteendoor encapsulation toe te passen. Gebruik op de juiste plekkenpublicenprivate. Maak de attributenworpenkarakterprivate met een underscore prefix (_worp,_karakter). - Test of de
index.tsnog correct werkt. -
Maak in de
index.tseen functie met de volgende signatuur:Deze functie gooit en print twee dobbelstenen, totdat er dubbel is gegooid.
-
Maak in je
index.tseen tweede dobbelsteen aan en roep vervolgensgooiTotDubbel()aan met je twee dobbelstenen. -
Schrijf TSDoc voor de klasse
Dobbelsteenals geheel en voor alle methodes van de klasse:- Beschrijf het doel van de klasse en van elke methode.
- Beschrijf voor elke methode de inputparameters en licht toe wat een methode teruggeeft.
- Gebruik in je TSDoc
@author,@paramen@return.
Richtlijnen bij coderen¶
- Zorg dat je naam en het doel van het programma bovenin staan.
- Gebruik de juiste inspringing (indentation) bij de lay-out.
- Let op juist gebruik hoofdletters en kleine letters.
- Gebruik goede namen.
- Voeg waar nodig commentaar toe dat inzicht geeft in je code.
- Vermijd magic numbers, gebruik constanten.
- Gebruik de TSDoc tags
@author,@paramen@return. - Denk aan encapsulation, gebruik
privatewaar mogelijk.