[Spring] Design Pattern

종원유·2022년 2월 12일
0

Spring

목록 보기
8/10
post-thumbnail

디자인 패턴

  • 디자인 패턴은 소프트웨어 설계 시 특정 상황에서 자주 만나는 문제를 해결하기 위해 사용할 수 있는 재사용 가능한 "솔루션"을 말한다.
  • 또는 효율적인 코드를 만들기 위한 방법론이라고 할 수 있다.

디자인 패턴의 종류

생성패턴(Creational Pattern)구조패턴(Structual Pattern)행동(Behavioral Pattern)
SingletonAdapterCommand
Abstract FactoryCompositeInterpreter
Factory MethodDecoratorIterator
BuilderFacadeMediator
PrototypeFlyweightMemento
ProxyObserver
State
Strategy
Template Method

디자인 패턴을 공부해야 하는 이유

  • 모든 디자인 패턴에는 간결한 이름이 있다. 어떠한 패턴을 적용하고자 할 때, 간단한 패턴 이름을 언급하는 것으로 설계의 의도와 해결책을 함께 설명할 수 있다.
  • 디자인 패턴은 주로 객체지향 설계에 관한 것들이다. 대부분 객체지향적 설계 원칙을 이용해 문제를 해결하기에 디자인 패턴을 적용함으로써 객체지향적 설계 원칙도 지킬 수 있다.

패턴의 설계 구조를 보면 대부분 비슷한데, 그 이유는 객체지향적인 설계로부터 문제를 해결하기 위해 적용할 수 있는 확정성 추구 방법이 대부분 두 가지 구조로 정리되기 때문이다.
하나는 클래스 상속이고, 다른 하나는 오브젝트 합성이다.
따라서 패턴의 결과로 나온 코드나 설계 구조만 보면 대부분 비슷해보인다.
패턴에서 가장 중요한 것은 각 패턴의 핵심이 담긴 목적 또는 의도이다.
패턴을 적용할 상황, 해결해야 할 문제, 솔루션의 구조와 각 요소의 역할과 함께 핵심 의도가 무엇인지를 기억해둬야 한다.

profile
개발자 호소인

0개의 댓글