Introduction
  • History of SOLID
  • Explanation of Udemy System
Single Responsibility Principle
  • Simplistic Definition
  • Definition Through Conjunction "AND"
  • Practical Definition Through Change
  • Simple Example: Employee
  • Simple Example: AuthManager
  • Advanced Example: KaraokePlayer
  • Single Responsibility and Reusability
  • Single Responsibility Principle Summary
Abstractions
  • Abstractions in Digital World
  • Abstractions in Object-Oriented Design
  • Abstractions in This Course
Open Closed Principle
  • Open Closed Confusion
  • Historical Definition
  • Current Definition
  • Example: Salary Calculator
  • Example: Karaoke Application
  • Open Closed Principle Summary
Liskov Substitution Principle
  • Intuitive Example: Rectangle and Square
  • Definition and History
  • Liskov Substitution Principle Rules
  • Method Signature Rules
  • Method Pre- and Post-Condition Rules
  • Class Property Rules
  • Example: Rectangle and Square
  • Liskov Substitution Principle Summary
Interface Segregation Principle
  • Definition
  • Example: Publish-Subscribe Architectural Pattern
  • Example: Big Callback Interface
  • Interface Segregation Principle Summary
Dependency Inversion Principle
  • Definition
  • Example: Open Closed Principle
  • Example: Callback
  • Example: Inter-Dependent Modules
  • Dependency Inversion Principle Summary
Summary
  • SOLID Summary
  • Bonus Lecture