자주 사용하는 설계 패턴을 정형화 시켜서 이를 유형별로 가장 최적의 방법으로 개발 할 수 있도록 설계둔 설계

알고리즘과 유사하나, 무조건적인 정답은 아니며, 프로젝트 상황에 맞춰 적용한다.

 

#Gof 디자인 패턴

SW 설계를 할 때 기존의 경험이 매우 중요한데, 모든 사람들이 많은 경험을 다 가지고 있을 수 는 없다.

따라서 이러한 지식을 공유하기 위해서 나온 것이 GOF(Gang of Four) 디자인 패턴이다.

객체 지향의 개념 중 재사용에 대한 설계를 할때 유용한 디자인 패턴을 정리 해두었다.

 

Gof의 디자인 패턴은 총 23개 이고, 이것을 활용하면 경험이 부족한 개발자도 좋은 SW 설계가 가능하다.

 

▶︎장점

• 소프트웨어 구조 파악 용이     •재사용으로 인한 개발 시간 단축

• 개발자간 원활한 소통             • 설계 변경 요청에 대한 유연한 대처

 

▶︎단점

• 객체지향 설계 / 구현 •초기 투자 비용 부담

 

- 생성 패턴:

객체를 생성하는 것과 관련된 패턴으로, 객체의 생성과 변경이 전체 시스템에 미치는 영향을 최소화, 코드의 유연성을 높여줌

  • Factory Method
  • Singleton
  • Prototype
  • Builder
  • Abstract Factory
  • Chaining

-구조 패턴:

프로그램 내의 자료구조나 인터페이스 구조 등 프로그램 구조를 설계하는데 활용 될 수 있는 패턴

큰 규모의 시스템에서는 많은 클래스들이 서로 의존성을 가지게 되는데, 이런 복잡한 구조를 개발하기 쉽게 만들어 주고, 유지 보수를 쉽게 만들어 줌

 

  • Adapter
  • Composite
  • Bridge
  • Decorator
  • Facade
  • Flyweight
  • Proxy

- 행위 패턴: 

반복적으로 사용되는 객체들의 상호작용을 패턴화한 것으로, 행위 관련 패턴을 사용하여 독집적으로 일을 처리하고자 할 때 사용.

  • Template Method
  • Interpreter
  • Iterator
  • Observer
  • Strategy
  • Visitor
  • Chain of responsibility
  • Command
  • Mediator
  • State
  • Memento

 

'Spring' 카테고리의 다른 글

Decorator pattern(데코레이터 패턴)  (0) 2021.04.18
Proxy pattern(프록시 패턴)  (0) 2021.04.16
Adapter pattern(어댑터 패턴)  (0) 2021.04.16
Singleton pattern(싱글톤 패턴)  (0) 2021.04.15
POJO 클래스  (0) 2021.04.15

+ Recent posts