Skip to main content

Docs

God shall bless us; and all the ends of the earth shall fear him.

디자인 패턴 (Design Patterns)

디자인 패턴은 소프트웨어 설계에서 자주 발생하는 문제들에 대한 재사용 가능한 해결책입니다.

생성 패턴 (Creational Patterns)

객체 생성 메커니즘을 다루며, 상황에 적합한 방식으로 객체를 생성합니다.

  • Singleton: 클래스의 인스턴스가 하나만 생성되도록 보장
  • Factory Method: 객체 생성 인터페이스를 정의하고 서브클래스가 구현
  • Abstract Factory: 관련된 객체들의 패밀리를 생성
  • Builder: 복잡한 객체의 생성 과정을 단계별로 분리
  • Prototype: 기존 객체를 복제하여 새 객체 생성

구조 패턴 (Structural Patterns)

클래스나 객체를 조합하여 더 큰 구조를 만드는 패턴입니다.

  • Adapter: 호환되지 않는 인터페이스를 변환
  • Bridge: 추상화와 구현을 분리
  • Composite: 트리 구조로 객체를 구성
  • Decorator: 객체에 동적으로 책임을 추가
  • Facade: 복잡한 서브시스템에 간단한 인터페이스 제공
  • Proxy: 다른 객체에 대한 대리자 역할

행위 패턴 (Behavioral Patterns)

객체 간의 알고리즘과 책임 분배를 다루는 패턴입니다.

  • Observer: 객체 상태 변화를 구독자에게 통지
  • Strategy: 알고리즘을 캡슐화하고 교체 가능하게 만듦
  • Command: 요청을 객체로 캡슐화
  • State: 객체의 상태에 따라 행위 변경
  • Template Method: 알고리즘의 골격을 정의하고 일부 단계를 서브클래스에서 구현

참고 자료