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.
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
- Open-Closed
- 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.
OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.
Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.
Find this site helpful? Tell a friend about us.
We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.
Your purchases help us maintain our catalog and keep our servers humming without ads.
Thank you for supporting OpenCourser.