본문 바로가기

반응형

- Programming/- 디자인 패턴

★ 3. 스트래티지 패턴 (Strategy Pattern) 스트래티지 패턴 (Strategy Pattern) 스트래티지 패턴에서는 알고리즘 군을 정의하고 각각을 캡슐화하여 교환해서 사용할 수 있도록 만듭니다.스트래티지를 활용하면 알고리즘을 사용하는 클라이언트와는 독립적으로 알고리즘을 변경할 수 있습니다. 부모 - 자식간의 상속을 이용해 동물의 행동을 호출하는 간단한 시스템에서스트래티지 패턴을 적용해보면서 설명하도록 하겠습니다. 위 그림을 살펴보겠습니다.Animal 클래스를 만든 뒤 동물 공통의 행동 함수인 울음(Cry), 움직임(Move), 동물의 모습을 표현하는display 메소드를 정의했습니다.여기서 구현할 동물은 Animal 클래스를 상속 받는 독수리(Eagle)와 호랑이(Tiger)입니다.독수리와 호랑이는 각각의 울음(Cry)과 모습(display) 메소.. 더보기
★ 2. 디자인 패턴 정리 디자인 패턴 정리 패턴은 특정 컨텍스트(패턴이 적용되는 상황. 반복적으로 일어날 수 있는 상황) 내에서 주어진 문제(해당 컨텍스트 내에서 이루고자 하는 목적 또는 제약 조건)에 대한 해결책(일련의 제약 조건 내에서 목적을 달성할 수 있는 일반적인 디자인)입니다. "어떤 컨텍스트 내에서 일련의 제약 조건에 의해 영향을 받을 수 있는 문제에 봉착했다면, 그 제약조건 내에서 목적을 달성하기 위한 해결책을 찾아낼 수 있는 디자인을 적용한다." 1. 범주별 분류 ※ 생성 관련 패턴(싱글턴, 추상 팩토리, 팩토리 메소드, 빌더, 프로토 타입) 객체 인스턴스 생성을 위한 패턴으로, 클라이언트와 그 클라이언트에서 생성해야 할 객체인스턴스 사이의 연결을 끊어주는 패턴 ※ 행동 관련 패턴(템플릿 메소드, 커맨드, 이터레이.. 더보기
★ 1. 디자인 패턴 게시판 디자인 패턴 게시판 디자인 패턴을 공부한 것을 공유할 목적으로 만든 게시판입니다. 더보기

반응형