Programming of any kind, including in game-development, can get complicated as the size and scope of a project increase. Investigating bugs and expanding the code with new functionality can be almost impossible if the code-structure is not well-thought-out.
In this one-hour, project-based course, we will cover the third principle of "SOLID" programming: Liskov's Substitution Principle ("LSP") states that in methods that refer to a superclass (or base class), any subclass that inherits from the superclass should be useable without error. A common example of this is that if a block of code expects a Mammal class type, then we should be able to send in a Dog or Whale class type and not produce any unexpected behaviour. In the project, we will create some "typical" code that is fairly common in game-development, and then restructure it to become compliant with LSP.
This project is part three of a five-part series on SOLID Programming principles, which are:
- Single Responsibility
- Liskov's Substitution (this guided project)
- Interface Segregation
- Dependency Inversion
Each of these guided projects stands on its own, but for a full understanding of good coding practices, completing all five guided projects (in order) is recommended....