본문 바로가기

디자인패턴2

Template Method Pattern Template Method Pattern 에 대해서 알아보도록 하겠습니다. 이 패턴을 설명하면 다음과 같습니다. 추상 클래스를 구현하고, 그 클래스를 사용하여 [기능]을 실행합니다. 하지만, 그 [기능]구현은 추상 클래스를 상속받은 구현 클래스에서 구현합니다. 설명만 들으면 아리송 한 관계로 예제를 보도록하겠습니다. namespace TemplatePattern { // 추상 클래스 public abstract class SportClass { // 구현 클래스에서 구현하게 될 부분 public abstract void role(); // play를 통해 role 사용. public void play() { role(); } } // 구현 클래스 public class BaseBallClass : Sp.. 2016. 6. 30.
Adapter Pattern Adapter Pattern에 대해사 알아 보도록 하겠습니다. 해당 패턴을 알아 보기전에 한가지 문제점에 대해서 먼저 알고 넘어가야 합니다. [상황] 1. [인사]를 출력하는 클래스가 존재 [추가 할 내용] 1. [닉네임]을 추가로 출력 필요 2. [닉네임]을 먼저 출력 하거나, 인사를 먼저 출력 할 수 있음 물론 [인사]를 출력하는 부분에서 [닉네임]을 받아서 함께 처리 하여도 됩니다. 하지만, 기존의 코드를 수정하고 싶지 않을 경우, 또는 하지 못하는 경우에 다음과 같은 방법을 사용합니다. 먼저 해당 부분은 2가지 방법이 존재하는데 interface 를 사용하는 상속으로만 해결 하는 방법과, 상속, 위임(포함)을 통한 방법이 있습니다. 물론 2가지 모두 Adapter Pattern 입니다. 코드를 확.. 2016. 6. 7.