S : Separation of concerns principle O : Open-Closed principle L : Liskov substitution Principle I : Interface segregation Principle D : Dependency Inversion Principle