- 개방 폐쇠 원칙
- 컴퓨터 부팅시 키보드 연결 예제로 설명
- 적용전
- S사 keyboard만 사용가능. S사 키보드가 작동오류시 다른 키보드를 사용할 수 없음
- Computer 클래스의 멤버 변수에 keyboard 인터페이스를 정의하고,
setKeyboard 메소드를 통해 특정 제조사의 키보드 객체를 주입 받는다. - 이와 같이 인터페이스를 이용해 키보드 연결 행위를 추상화함으로써 어떤 키보드 클래스도 주입 받을 수 있다.
- S사 키보드를 사용하고 싶을 때나 또는 L사 키보드를 사용하고 싶을 때 Computer 클래스를 수정할 필요 없이
외부에서 키보드 객체를 주입해 주기만 하면 되는 것이다.
- 성과
- OCP(계방폐쇠 원칙중에) 하나인 "키보드를 사용해야하는 변경에는 닫혀있다." 라는 원칙이 성립되는 것이다.
- OCP 원칙의 "어떠한 제조사 키보드도 사용할수있는 확장에는 열려있다." 를 수용한다.
'spring' 카테고리의 다른 글
Filter, Intercepter, AOP 차이점 (0) | 2020.09.23 |
---|---|
MyBatis란? (0) | 2020.08.08 |
AOP란? (0) | 2020.06.19 |