Basic OOP is easy, isn’t it?

Eric Lippert demonstrates a very basic OOP explores the problem “a player can use a weapon, a wizard is a kind of player, a staff is a kind of weapon, but a wizard can only use a staff””.

Seems easy enough? Let’s see…

Note: this is not about swords and sorcery, it’s just an example. Organizing classes, and more than one way to violate the Liskov Substitution Principle.

Leave a comment