Chess game would be a good example of what to never do with OOP. If you start with `class Pawn inherits from Piece`, then you going to find yourself in deep shit, really fast. Low performance, high complexity. If you use an 8 by 8 array of integers that mark the pieces, than your code will be just bunch of simple algorithms, that can work really well and fast.
It might be a good exercise: write simple chess engine in OOP vs data-centric style, and compare.