* 어댑터 패턴 - 개방 폐쇄 원칙을 활용한 설계 패턴
합성,즉 객체를 속성으로 만들어서 참조하는 패턴
( 호출 당하는 쪽의 메서드를 호출당하느쪽의 코드에 대응하도록, 중간에 변환기를 통해 호출하는패턴)
* 프록시 패턴 - 실제 서비스 메서드의 반환값에 가감하는것을 목적으로 하지않고, 제어의 흐름을 변경하거나,
다른 로직을 수행하기 위해 사용한다.
(제어 흐름을 조정하기 위한 목적으로 중간에 대리자를 두는 패턴)
* 데코레이터 패턴 - 원본에 장식을 더하는 패턴( 클라이언트가 받는 반환값에 장식을 덧입힌다.)
(메서드 호출의 반환값에 변화를 주기 위해 중간에 장식자를 두는 패턴)
* 싱글톤 패턴 - 인스턴스 하나만 만들어 사용하기 위한 패턴
(오직 인스턴스를 하나만 만들고, 그것을 계속해서 재사용한다)
(클래스의 인스턴스 , 즉 객체를 하나만 만들어 사용하는 패턴)
* 템플릿 메서드 패턴 - 상위클래스에 공통로직을 수행하는 템플릿 메서드와 하위 클래스에 오버라이딩을
강제하는 추상메서드 또는 선택적으로 오버라이딩할수 있는 훅(hook)메서드를 두는 패턴
(상위클래스의 견본 메서드에서 하위클래스가 오버라이딩한 메서드를 호출하는 패턴)
* 팩터리 메서드 패턴 - 객체 생성 반환하는 메서드를 말한다.
(오버라이드된 메서드가 객체를 반환하는 패턴)
* 전략패턴(디자인 패턴의 꽃) - 전략패턴을 구성하는 세요소는 꼭 기억해야한다.
1) 전략 메서드를 가진 전략객체
2) 전략 객체를 사용하는 컨텍스트 (전략객체의 사용자/ 소비자)
3) 전략 객체를 생성해 컨텍스트에 주입하는 컨텍스트( 제3자, 전략객체의 공급자)
* 클라이언트는 다양한 전략중 하나를 선택해 생성한후, 컨텍스트에 주입한다.
- 클라이언트가 전략을 생성해 전략을 실행할 컨텍스트에 주입하는 패턴
* 템플릿 콜백 패턴 - 전략패턴의 변형으로 DI(의존성주입)에서 사용하는 특별한 형태의 전략패턴이다.
(전략 패턴과 모든것이 동일한데, 전략을 익명내부 클래스로 정의해서 사용한다는 특징이 있다.)
(전략을 익명 내부 클래스로 구현한 전략패턴)
'읽은 책 정리 > 스프링 입문을 위한 자바 객체지향 원리와 이해' 카테고리의 다른 글
객체 지향 설계 5원칙 - SOLID (0) | 2021.07.16 |
---|---|
자바가 확장한 객체지향 (0) | 2021.07.16 |
자바와 객체지향(OOP) (0) | 2021.07.16 |