OCP
OCP
OCP
- Open Closed Principle의 약자로 기존의 코드를 변경하지 않으면서 기능을 추가 / 확장 할 수 있게 설계하도록 하는 디자인 패턴
- OCP를 따르면 변경을 최소화하며 확장을 쉽게 할 수 있음
- 예시
User
클래스가A
클래스를 참고해 의존적으로 구현되었다고 가정- 만약 새로운 기능을 추가한 클래스인
B
클래스가 추가된다면User
클래스의 코드를 전체적으로 수정해야함 (OCP 위배) - 인터페이스를 만들고,
A
,B
클래스 및 추후에 추가될 클래스도 해당 인터페이스를 상속받도록 수정 User
클래스가 해당 인터페이스를 사용하도록 하면, 이후 또다른C
클래스로 변경할 일이 생겨도 쉽게 변경 가능