팩토리 메소드 패턴(Factory Method Pattern)

  • 용도
    • Instnce 작성을 하위 class에게 위임
      • Instance를 만드는 방법은 상위 class에서 결정하지만, 구체적인 class명을 결정하지 않음
    • Instance 생성을 위한 Framework과 실제 Instance를 생성하는 Class를 분리함
    • 객체를 만드는 공장을 만드는 패턴 -> 결합도가 낮아질 수 있다
  • 사용 방법
    • Factory객체를 만들고 Factory에서 객체들을 생성한다
  • Class Diagram

방문자 패턴(Visitor Pattern)

  • 용도
    • 데이터와 메소드를 구분하기 위함
    • 많은 데이터에 여러 가지 유형의 처리를 수행할 경우 활용
  • 사용 방법
    • 데이터 구조 내부를 traversal하는 ‘visitor’ 클래스로 그 클래스에게 데이터의 처리를 맡김, 새로운 처리를 추가할 때는 새로운 visitor를 생성함
  • Class Diagram

중재자 패턴(Mediator Pattern)

  • 용도
    • 모든 행동을 수행하기 전에 ‘중재자 객체’의 결정이 있어야 하고, 중재자 객체로 프로그램이 수행됨
    • 각 객체들은 중재자만 알게됨
  • 사용 방법
    • 각 객체와 중재자를 연결함
  • Class Diagram

     

책임 연쇄 패턴(Chain of Responsibility Pattern)

  • 용도
    • 어떤 요구가 발생했을 때, 그 요구를 처리할 Object를 바로 결정할 수 없을 때, 다수의 Object를 Chain으로 연결해 차례로 방문하면서 목적에 맞는 Object를 결정함(내가 못하면 남한테 전가시킴)
    • 요구하는 측과 처리하는 측의 연결을 약화시킴(Coupling을 낮추는 역할을 함)
  • 사용 방법
    • Handler객체가 문제를 해결했는지 확인하면서 계속해서 가능한 객체를 연결해 줌
  • Class Diagram

'디자인패턴' 카테고리의 다른 글

방문자 패턴(Visitor Pattern)  (0) 2019.05.20
중재자 패턴(Mediator Pattern)  (0) 2019.05.20
어댑터 패턴(Adapter Pattern)  (0) 2019.05.20
옵저버 패턴(Observer Pattern)  (0) 2019.05.20
프록시 패턴(Proxy Pattern)  (0) 2019.05.20

프로토 타입 패턴(Prototype Pattern)

  • 용도
    • 미리 만들어진 객체를 복사해서 객체를 생성하는 방식
    • 객체를 많이 만들어야 할 경우, 객체 생성에 드는 코딩 분량을 현저히 줄일 수 있다
    • 클래스로부터 객체를 생성하기 어려운 경우(그래픽 에디터에서 사용자의 마우스 클릭으로 생성되는 객체들)
  • 사용 방법
    • 모형(Prototype) 인스턴스를 등록해 놓고, 등록된 인스턴스를 복사(clone())해서 인스턴스를 생성함
  • Class Diagram

+ Recent posts