The player should receive points every time they manage to remove a row. And the more rows are removed at a time, the more points should be given them.
Implement a scoring system. The original Nintendo scoring system is quite simple, but you may choose whichever you like.
Since there are many different scoring systems, and it also depends on the game level, it's best to keep the details of
scoring outside the Board
class.
Use the observer pattern, so that the Board
sends out
notifications about removed rows.
Using test doubles the board can be
tested in isolation, without a scoring system.
Then implement the scoring rules as an object which listens for the notifications from Board
.