템플릿 메서드
전체적으로는 동일하면서 부분적으로는 다른 구문으로 구성된 메서드의 코드 중복을 최소화 할 때 사용
즉, 전체적인 알고리즘은 상위 클래스에서 구현하면서 다른 부분은 하위 클래스에서 구현하는 것이다.
<예시>
드래곤의 전체적인 어택 알고리즘은 다 비슷하지만, 하위클래스별로 세부적으로 차이가 나는 부분만
하위클래스인 블루드래곤과 레드드래곤에서 재정의 해주는 예시이다,
옵저버 패턴
어떤 객체의 상태가 변할 때 그와 연관된 객체들에게 알림을 보내는 디자인 패턴
큰 구성도를 보자면, 이전에 올린 글인 이벤트 핸들러에서 다뤘던 그림인데
특정 이벤트가 발생했을때 이벤트핸들러가 작동하고,
그럼 그 이벤트핸들러를 구독하고 있는 이벤트리스너들이 동작하는 패턴이다.
'C# > C# 학습 (TIL)' 카테고리의 다른 글
C# 중급문법 Day8 Coroutine (코루틴) (0) | 2022.06.23 |
---|---|
C# 중급문법 Day7 Reflection / DeepCopy 일반화(reflection 적용) (0) | 2022.06.22 |
C# 중급문법 Day6 EventHandler (0) | 2022.06.21 |
C# 디자인패턴 : 전략패턴 (0) | 2022.06.20 |
C# 중급문법 Day5 Action / Func / event / 람다 (0) | 2022.06.20 |