You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
David Hellwig edited this page Nov 2, 2021
·
16 revisions
Sequence Diagrams
Begin Game
Playing a Tile
Tile Played Between two Corporations
Buying Stocks
Drawing a Tile
Ending the Game
Implementation Class Diagram
Design Patterns
Two new classes were added to adhere to the single responsibilty principle. TileTray will handle giving out tiles, CorporationTray will hold corporation information.
Duplicate code was removed to adhere to the "DRY" principle.
Loose Coupling: Certain Class no longer have access to other classes (no longer associated).
Loose Coupling: Board no longer depends on tiles or buildings.
Seperation of Concerns: UI class can no longer directly interact with the board. StockMarketTray can no long affect the board. UI no longer directly associated with Banker class.
Principle of Least Knowledge: Classes that shouldn't have had access to other classes had access removed.
Facade Design Pattern: Users can no longer directly interact with classes.