2.log

10 | 디자인 패턴 (요약) 본문

소프트웨어공학

10 | 디자인 패턴 (요약)

2.log 2023. 5. 6. 17:43
728x90
반응형

 

디자인 패턴


'이럴 때에는 이런 방식을 사용하면 좋다'라고 선배 개발자들이 경험적으로 정립해 놓은 좋은 설계들의 모음

가장 대표적인 것이 GoF(Gang of Four)의 23가지 패턴으로, 디자인 패턴을 잘 알면 장황하게 설명할 필요 없이 '싱글톤 사용할 겁니다' 한 마디로 상대에게 의도한 바를 명확히 전달할 수 있고, 설계과정에서 겪는 시행착오를 줄일 수 있어 의사소통과 생산성 향상에 도움을 줌 (단, 패턴!= 진리)

 

 

 

패턴의 분류


  • 생성패턴은 객체의 생성, 구조패턴은 객체 간 합성, 행위패턴은 객체 간 상호작용에 관여
  • 클래스 패턴은 주로 상속을 통해 관련되는 클래스와 서브클래스 간의 관련성을 다룸 / 컴파일 타임에 정적으로 결정
  • 객체 패턴은 객체 간 관련성을 다룸 / 런타임에 동적으로 결정

 

https://4z7l.github.io/2020/12/25/design_pattern_GoF.html#%ED%96%89%EC%9C%84-%ED%8C%A8%ED%84%B4

 

 

 

생성 패턴


  • 생성 패턴 : 객체 생성과 관련, 객체의 인스턴스화 과정을 추상화 하는 방법 다룸, 캡슐화를 통해 정보 은닉하여 재사용과 유연성 높임
  • 생성클래스 패턴 : 객체를 생성하는 일부를 서브클래스가 담당
  • 생성객체 패턴 : 객체 생성을 다른 객체에게 위임

 

 

 

구조 패턴


  • 클래스 or 객체를 조합하는 패턴
  • 구조클래스 패턴 : 상속을 통해 클래스나 인터페이스 합성
  • 구조객체 패턴 : 객체를 합성하는 방법 정의

 

 

 

행위 패턴


  • 클래스 or 객체 간 상호작용 방법 정의하는 패턴, 객체간 결합도 낮추도록 도와줌
  • 행위 클래스 패턴 : 상속을 통해 알고리즘과 제어 흐름 기술
  • 행위 객체 패턴 : 하나의 작업을 수행하기 위해 객체 집합이 협력하는 방식 기술

 

 


* 생성패턴 : https://kimkmg.tistory.com/74

 

10 | 디자인 패턴 (생성패턴)

생성 패턴 객체 생성과 관련, 객체의 인스턴스화 과정을 추상화하는 방법 다룸, 캡슐화를 통해 정보 은닉하여 재사용과 유연성 높임 Factory Method Pattern (Virtual Constructor) 객체 생성을 위한 인터페

kimkmg.tistory.com

* 구조패턴(정리중) : 

* 행위패턴(정리중) : 

 

 


출처 

 

https://4z7l.github.io/2020/12/25/design_pattern_GoF.html#%ED%96%89%EC%9C%84-%ED%8C%A8%ED%84%B4

 

[Design Pattern] GoF(Gang of Four) 디자인 패턴 - HERSTORY

디자인 패턴이란 디자인 패턴은 모듈의 세분화된 역할이나 모듈들 간의 인터페이스 구현 방식을 설계할때 참조할 수 있는 전형적인 해결 방식을 말한다. 디자인 패턴을 통해 설계 문제, 해결 방

4z7l.github.io

 

https://steady-coding.tistory.com/387

 

[디자인 패턴] 상태(State) 패턴이란?

안녕하세요? 제이온입니다. 저번 시간에는 템플릿 메소드 패턴에 대해서 알아 보았습니다. 오늘은 상태 패턴을 설명하겠습니다. 상태(State) 패턴 상태 패턴은 일련의 규칙에 따라 객체의 상태를

steady-coding.tistory.com

https://victorydntmd.tistory.com/292

 

[디자인패턴] 전략 패턴 ( Strategy Pattern )

전략 패턴 ( Strategy Pattern )객체들이 할 수 있는 행위 각각에 대해 전략 클래스를 생성하고, 유사한 행위들을 캡슐화 하는 인터페이스를 정의하여,객체의 행위를 동적으로 바꾸고 싶은 경우 직접

victorydntmd.tistory.com

 

728x90
반응형
Comments