Weetikveel
Legacy Member
Sinds kort ben ik begonnen met java op eigen houtje te leren. Ik heb ooit al wat geprogrammeerd, maar dat is lang geleden. Ik heb nu de beide cursussen gestudeerd op Udacity (java functional programming en oop programmeren in java).
En nu probeer ik wat te oefenen. Ik maakte een spelletje blad steen schaar. Dat lukt wel zonder al te veel problemen (het werkt), maar ik vraag me af of ik wel 'good coding practises' toepas. Ik weet niet zo goed of de opdeling in de verschillende klassen een goeie manier is zoals ik heb hier heb gedaan. Het programmeren zelf is vrij eenvoudig, maar een zinvolle structuur voor het programma vinden (met de opdeling in klassen en het in de juiste klasse plaatsen vd methoden etc.) vind ik veel moeilijker (iedereen wellicht).
Het project staat op Github: https://github.com/whatdoiknowyouknow/rockpaperscissors .
Kunnen jullie hierover feedback geven? Alvast bedankt!
Ik bedacht zelf alvast dat het misschien wat raar is dat humanPlayer een child class vormt van Player. Want de class Player is voor een stuk 'de computer' die speelt, maar er staan methoden in die zowel voor de computer als voor de menselijke speler van toepassing zijn (getScore bijvoorbeeld).
Ik heb zelf ook alvast een paar bijkomende concrete vragen (maar de vraag naar feedback over 'good coding practises' is het belangrijkst):
- Is het mogelijk om op één of andere manier de variabele 'name' vd speler (in klasse player) private te houden? Ik slaag er in dat geval niet in om die dan aan te passen in de functie setPlayerName in de child class. Staat nu dus public.
- Ik snap niet zo goed wat er in de constructor hoort, en wat erboven. Ik merk wel dat het programma niet werkt als ik een aantal regels in de constructor zet (bepaalde variabelen definiëren), dus zet ik ze er dan maar boven, en dan werkt het wel, maar waarom dat nu zo juist moet, dat begrijp ik niet.
- Is het ok om meteen in de constructor gebruik te maken van methodes van de betreffende class (in de class Game)?
Alvast bedankt!
En nu probeer ik wat te oefenen. Ik maakte een spelletje blad steen schaar. Dat lukt wel zonder al te veel problemen (het werkt), maar ik vraag me af of ik wel 'good coding practises' toepas. Ik weet niet zo goed of de opdeling in de verschillende klassen een goeie manier is zoals ik heb hier heb gedaan. Het programmeren zelf is vrij eenvoudig, maar een zinvolle structuur voor het programma vinden (met de opdeling in klassen en het in de juiste klasse plaatsen vd methoden etc.) vind ik veel moeilijker (iedereen wellicht).
Het project staat op Github: https://github.com/whatdoiknowyouknow/rockpaperscissors .
Kunnen jullie hierover feedback geven? Alvast bedankt!
Ik bedacht zelf alvast dat het misschien wat raar is dat humanPlayer een child class vormt van Player. Want de class Player is voor een stuk 'de computer' die speelt, maar er staan methoden in die zowel voor de computer als voor de menselijke speler van toepassing zijn (getScore bijvoorbeeld).
Ik heb zelf ook alvast een paar bijkomende concrete vragen (maar de vraag naar feedback over 'good coding practises' is het belangrijkst):
- Is het mogelijk om op één of andere manier de variabele 'name' vd speler (in klasse player) private te houden? Ik slaag er in dat geval niet in om die dan aan te passen in de functie setPlayerName in de child class. Staat nu dus public.
- Ik snap niet zo goed wat er in de constructor hoort, en wat erboven. Ik merk wel dat het programma niet werkt als ik een aantal regels in de constructor zet (bepaalde variabelen definiëren), dus zet ik ze er dan maar boven, en dan werkt het wel, maar waarom dat nu zo juist moet, dat begrijp ik niet.
- Is het ok om meteen in de constructor gebruik te maken van methodes van de betreffende class (in de class Game)?
Alvast bedankt!