책&게임/GOF

1.서론

소나무꼴 2019. 10. 2. 15:02

1.6 디자인 패턴을 이용하여 문제를 푸는 법

적당한 객체 찾기

객체의 크기 결정

객체 인터페이스이 명세

객체 구현 명세하기

    클래스 상속 대 인터페이스 상속

    구현에 따르지 않고, 인터페이스에 따르는 프로그래밍

재사용을 실현 가능한 것으로

    상속 대 합성

      상속 장점 : 내부를 볼수 있다 / 단점: 부모클래스 변경 불가능, 필요없는 부모클래스 정보 모두 가져옴

      합성 장점 : 런타임에 내부 객체를 변경가능. 종속성에 이득 / 단점: 통제불가능 스파게티 코드 

    위임

    상속 대 매개변수화된 타입

런타임 및 컴파일 타임의 구조를 관계짓기

변화에 대비한 설계

  특정 클래스에서 객체 생성 : 추상 팩토리, 팩토리 메서드, 원형

  특정 연상에 대한 의존성 : 책임 연쇄, 명령

  하드웨어와 소프트에어 플랫폼에 대한 의존성 : 추성 팩토리, 가교

  객체의 표현이나 구현에 대한 의존성 : 추상 팩토리, 가교, 메멘토, 프록시

  알고리즘 의존성 : 빌더, 반복자, 전략, 템플릿 메서다, 방문자

  높은 결합도 : 추상 팩토리, 가교, 책임 연쇄, 명령, 퍼사드, 중재자, 감시

  서브클래싱을 통한 기능 확장 : 가교, 책임 연쇄, 장식자, 감시자, 전략

  클래스 변경이 편하지 못한 점 : 적응자, 장식자, 방문자

 

1.7 디자인 패턴을 고르는 방법

  패턴이 어떻게 문제를 해결하는지 파악합니다

    적합한 객체를 찾고 그기를 결정, 어떻게 객체의 인터페이스를 명세화 하는지에 대한 내용을 정리

  패턴의 의도 부분을 봅시다

  패턴들 간의 관련성을 파악합시다

  비슷한 목적의 패턴들을 모아서 공부합시다

  재설계의 원인을 파악합시다.

  설계가 가변성을 가져야 하는 부분이 무엇인지 파악합시다

1.8 디자인 패턴 사용 방법

  

  

'책&게임 > GOF' 카테고리의 다른 글

Chapter.3 생성자 패턴  (0) 2019.10.04