TIL
2021.07.14 기록장
Gisungcu
2021. 7. 13. 23:02
ToDo
- 알고리즘..
- 책 읽기
- 토비의 스프링
Done
- 알고리즘
- 토비의 스프링
Weekly goal
- 책 읽기
- 토비 스프링 코딩
- 플젝?
토비의 스프링
전략 패턴으로 변하는 것과 변하지 않는 것을 분리했다.
근데 매번 전략(바뀌는 것)을 새로 만들어 사용하고, 콘텍스트(바뀌지 않는 것) 호출하면서 DI 하는 방식을
템플릿/콜백 패턴이라고 한다.
템플릿 : 어떤 목적을 위해 미리 만들어둔 모양이 있는 틀
콜백 : 실행되는 것을 목적으로 다른 오브젝트의 메서드에 전달되는 오브젝트
전략 패턴과의 차이점은 전략 패턴은 여러 개의 메서드를 가진 일반적인 인터페이스를 사용한다.
템플릿/콜백 패턴은 콜백이 단일 메서드 인터페이스를 사용한다.(메서드 안에서 익명 구현 객체로)
그렇기에 클라이언트와 콜백이 강하게 결합된다.
전략 패턴은 인터페이스의 구현체를 만들어 바꿔 끼운다면 템플릿/콜백 패턴은 콜백(메서드, 익명 구현 객체)을 바꿔 끼운다.
매번 다른 전략을 사용하고 있다.