Further reading
- The Single Responsibility Principle by Robert C. Martin
- For more details regarding understanding the different kinds of cohesion and coupling, check out https://www.geeksforgeeks.org/software-engineering-coupling-and-cohesion/
- Many tutorials on IoC can be found at https://www.tutorialsteacher.com/ioc/
- Test Driven Development: By Example by Kent Beck
- Interface Oriented Design: With Patterns by Ken Pugh