1. 문법 규칙을 클래스로 표현, Interpreter 패턴 (1) Interpreter 패턴의 개념 및 사용 목적 개념 사용 목적 자주 등장하는 문제를 간단한 언어의 문법으로 정의하고 해석하여 재사용하는 행동 디자인 패턴 – 자주 등장하는 패턴을 문법/언어로 정의 – 기존 코드 변경없이 새로운 표현 생성 (2) Interpreter 패턴의 클래스 다이어그램 (3) Interpreter 패턴의 구성요소 구성요소 역할 AbstractionExpression 상
1. 인터페이스 호환성 제공, Adapter 패턴 (1) Adapter 패턴의 개념 및 사용 목적 개념 사용 목적 호환되지 않은 인터페이스를 가진 객체 간 클래스 상속과 인스턴스 위임을 통해 인터페이스 호환성을 제공하는 구조적 디자인 패턴 – 서로 다른 인터페이스 간 호환성 제공 – 프로그램 신/구버전 공존 가능성 제공 (2) Adapter 패턴의 클래스 다이어그램 상속 위임 (3) Adapter
1. 불필요 의존성 제거, Factory Method 패턴 (1) Factory Method 패턴의 개념 및 사용 목적 개념 사용 목적 클래스의 인스턴스 생성을 하위 클래스에게 맡기도록 객체를 생성하기 위한 인터페이스를 정의하는 디자인 패턴 – 결합 문제 해결 위한 불필요한 의존성 제거 – 프레임워크와 실제 인스턴스 생성을 분리 (2) Factory Method 패턴의 클래스 다이어그램 (3) Factory Method 패턴의
1. 디자인 패턴의 개념 및 필요성 개념 특징 소프트웨어 설계 시 특정 문맥에서 공통적으로 발생하는 문제 해결을 위해 재사용 가능한 해결책 – 객체지향 설계 – 공통된 설계 문서 – 의사소통 도구로 활용 디자인 패턴은 프로그램 언어로 즉시 사용 가능한 완성된 디자인은 아니며, 상황에 맞게 사용될 수 있는 문제 해결에 대한 서술이나 템플릿을 의미 2.