MVC
De Model-View-Controller archituur wordt gebruikt om de GUI, logica en model van elkaar te scheiden.
V(iew): de user interface
- toont models aan de actor
- ontvangt input (keyboard, mouse, touch) van actor
C(ontroller): regelt het verloop van de app
- opstarten en afsluiten
- creërt Views en Models
- toont Views op juiste gewenste moment aan actor
- handelt de ontvangen input uit View af en vertaalt deze eventueel naar een actie in het model
- bevat threads
- regelt ondersteunende diensten zoals
- soundplayer
- file I/O
- database acces (not the queries, just the access)
- conversies (bv van relatieve naar absolute coordinaten)
- exception handling
- logging
M(odel): bevat het domein-model
- data + business logica
- domein specifieke enums
REGELS
- een View weet niets van een model
- NB: in jaar 1 wordt lezen uit een Model nog toegestaan
- een View mag NIET schrijven in een Model
- een Model bevat GEEN view-informatie zoals
- schermcoördinaten / -afmetingen
- plaatjes (png / gif) en sounds
- imports van JavaFX libraries