https://blog.codigojose.com/liskov-substitution-solid/
Liskov Substitution – SOLID III