국비 학원 Day 08 - 01/ 디자인 패턴

이상기·2023년 2월 2일

국비학원 - JAVA

목록 보기
14/23

디자인 패턴이란 ?

소프트웨어를 설계할 때 특정 맥락에서 자주 발생하는 고질적인 문제들이 또 발생햇을 떄 재사용할 수 있는 훌륭한 해결책. 여기서 중요한 것은 한 번 잘 만들어놓은 것을 처음부터 만들 필요가 없다는 것이다.이렇게 적어놓긴 했지만 사실 제일 중요한 것은 설계자들이 "올바른" 설계를 "빨리" 만들어 주는 것이다. 이 것을 진행하는데에 있어서 디자인 패턴이 사용되는 것이다.다음은 디자인 패턴이 구분되는 3가지 이다.

디자인 패턴의 종류

--------------------------------------------------------------------------------------------------

    생성패턴 (Creational Pattern)
  • Singleton
  • Abstract Factory
  • Factory Method
  • Builder
  • Prototype

--------------------------------------------------------------------------------------------------
    구조 패턴 (Structural Pattern)
  • Adapter
  • Composite
  • Decorator
  • Facade
  • Flyweight
  • Proxy

--------------------------------------------------------------------------------------------------
    행동 패턴 (Behavioral Pattern)
  • Command
  • Interpreter
  • Iterator
  • Mediator
  • Memento
  • Observer
  • State
  • Strategy
  • Template Method
--------------------------------------------------------------------------------------------------

다음 네 가지 요소를 중점으로 보면 된다.
1. 패턴 이름 (Pattern Name)
- 패턴 이름은 해당 패턴의 솔류션을 담고 있는 경우가 많음.따라서 설계에 대한 생각을 더욱 쉽게 할 수 있고, 개발자들 간 소통이 원할해짐.

2. 문제 (Problem)
- 언제 패턴을 사용하였는가를 서술하며 해결할 문제와 그 배경을 뜻함. 문제를 제시함으로써 패턴이 무엇이 적용될 지 정해짐.

3. 해법(Solution) 및 구현(Implementation)
- 앞서 2번에서 다룬 문제에 대하여 어떻게 해결할 수 있을 것인가에 대한 해결책 제시 및 구현.

4. 결과(Consequence)
- 디자인 패턴을 적용해서 얻는 결과와 장단점.

profile
DBA가 되고싶은 사람입니다

0개의 댓글