Design Patterns we used
We used several design patterns throughout the program. Below we list
per pattern the packages in which it has been used. The description
of these packages contains a section that explains which classes
CompositePattern
- In quest.client.game (VisibleObject hierarchy) -> niet helemaal, maargoed. Leunt op de Java3D scene graph die wel een Composite is
Facade
- In quest.global.game (GameLogic object is facade for the whole game)
- In quest.server.util (MSQLCommunicator is facade for the MySQL database)
Flyweight
- In quest.client.game for sharing NodeComponents
Observer
- In quest.global.game
- In quest.client.game (ook los als PickableObject en PickListener)
- Het ClientDaemon/MessageListener verhaal
Singleton
Zo'n beetje overal?