Coding Standards

This is a draft, open for discussion

Main Points

  • All game state is encapsulated in a single class.
  • Separate handler functions for drawing, interaction with user.
  • Pass the minimum amount of information required for the function to do its job. (Unless the function modifies the model.)
  • Testing of all non-drawing functions is required.
  • Demonstration of drawing capabilities in one function.
    • Create example states.
    • Render each.
    • Hit enter to continue via input().

Details for Discussion

  • Do we want to force a separation of game logic from user interface logic? (Explore: model.g and model.ui.)
  • Game logic-manipulating functions only receive game logic variables, not UI variables.