Lecture 9: SOLID Principles (SRP and DIP)

This lecture introduces the SOLID design principles. It discusses the Single Responsibility Principle (SRP): that a module should be responsible to one (and only one) actor. It also explores the Dependency Inversion Principle (DIP): that the most flexible software systems are those in which source code dependencies refer to abstractions, not concretions.