Original Post
Hey all, I've recently had aspirations to become a programmer. I've got the basics down, but I'm having trouble with some new concepts. I just finished reading most of Code Complete, and I wanted to remake my Tetris clone using good design. The part I'm hung up on is deciding where the responsibilities should be. Should I have my input class call changes to my model, or should the model query the input class? Should the model call the graphics output, or should a third class query the model, then send that to the graphics class? Should the graphics class be sent instructions to draw 1 block at a time, or should it be sent a model of the current state, and decipher it itself? How does one make these decisions? Any advice would be much appreciated.