SOLID Programming: Interface Segregation Principle in Unity
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 fourth principle of "SOLID" programming: Interface Segregation Principle ("ISP") states that classes should not be required to implement
methods or properties it doesn't use. This means a monolithic interface is usually inefficient and should be broken into its functional parts. In the project, we will create some "typical" code that is fairly common in game-development, and then restructure it to become compliant with ISP.
This project is part four of a five-part series on SOLID Programming principles, which are:
- Single Responsibility
- Open-Closed
- Liskov's Substitution
- Interface Segregation (this guided project)
- 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.
In this one-hour, project-based course, we will cover the fourth principle of "SOLID" programming: Interface Segregation Principle ("ISP") states that classes should not be required to implement
methods or properties it doesn't use. This means a monolithic interface is usually inefficient and should be broken into its functional parts. In the project, we will create some "typical" code that is fairly common in game-development, and then restructure it to become compliant with ISP.
This project is part four of a five-part series on SOLID Programming principles, which are:
- Single Responsibility
- Open-Closed
- Liskov's Substitution
- Interface Segregation (this guided project)
- 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.