반응형
SRP(the single responsibility principle) : 단일책임의 원칙
- 하나의 클래스는 하나의 method만을 갖게 됨에 따라 수정에 대한 이유는 한가지가 되어야 함.
- 실제로 사용이 어렵다)
OCP(the open closed principle) : 개방 폐쇄의 원칙
- 하나의 클래스는 수정에는 페쇄되어 있고, 확장에는 개방되어 있어야 한다.
- 다형성과 추상화에 관련된 내용
- 기능 개선시 직접적인 수정보다는 상속을 통한 개선이 좋음
LSP(the Liskov Substitution Principle) : 리스코프 치환의 원칙
- 상속을 하게 되는 경우 IS-A 관계가 성립하기 때문에 지켜져야 하는 원칙
- 하위클래스는 상위클래스로 참조가 가능한 상속와 관련된 원칙
ISP(the Interface Segregation Principle) : 인터페이스 분리의 원칙
- 사용자별로 다른 방식의 인터페이스가 제공되도록 설계되어야 함.
- ex) 일반사용자와 관리자에게 주어지는 인터페이스가 달라야 하는 것
DIP(the Dependency Inversion Principle) : 의존성 역전의 원칙
- 의존성을 낮추기 위해 인터페이스를 통한 추상화로 최대한 느슨하게 설계하는 것
- 완전한 무결성, 독립성은 현실적으로 힘들다.
반응형