SRP (Single Responsibility Principle) : 단일 책임 원칙
OCP (Open-Closed Principle) : 개방 폐쇄 원칙
S/W 구성요소(Component, Class, Module, Function 등)는 확장에 대해서는 열려 있어야 하지만 변경에 대해서는 닫혀 있어야 함
자신의 확장에는 열려 있고, 주변의 변화에 대해서는 닫혀 있어야 함
코드 연구소 를 참고하였습니다 - https://code-lab1.tistory.com/121
LSP (Liskov Substitution Principle) : 리스 코프 치환 원칙
ISP (Interface Segragation Principle) : 인터페이스 분리 원칙
DIP (Dependency Inversion Principle) : 의존 관계 역전 원칙
Programmer는 Abstract에 의존해야지, 구체화에 의존하면 안 됨
Abract(Interface)에 의존해야지, 구체화(Class)에 의존하면 안 된다는 것
코드 연구소 를 참고하였습니다 - https://code-lab1.tistory.com/121
→ 앞 글자들을 모아 SOLID 라고 부르기도 함