Design Pattern

구체적인 구현을 실현하기 위한 사고방식, 해법.

https://en.wikipedia.org/wiki/Design_Patterns#Patterns_by_Type

기초 용어

SOLID : 객체 지향 프로그래밍 및 설계의 다섯 가지 기본 원칙 unified_modeling_language

분류

기본적으로 Yuki Hiroshi에 의한 분류로 서술.

GoF에 따른 분류
Creational Structural Behavioral
기초
하위 클래스에게 위임

상속과 관련된 디자인 패턴

인스턴스 생성
분리해서 생각

복잡하게 뒤섞이기 쉬운 프로그램을 분리해서 생각

동일한 것으로 간주하기

언뜻 보기에 서로 다른 것을 통일적으로 조작할 수 있도록 하거나, 취급 방법을 바꾸지 않고 기능을 추가하는 패턴과 위임에 대한 내용

구조를 돌아다니기
단순화

클래스들이 복잡한 관계에 있을 때, 단순하게 만들기

상태 관리
낭비 없애기
클래스로 표현

명령, 문법규칙과 같은 이외의 것을 클래스로 표현