디자인 패턴(Design Pattern)이란?
디자인 패턴이란 소프트웨어 디자인 과정에서 빈번하게 발생하는 문제들을 어떻게 풀어나갈 것인가에 대한 일종 솔루션 입니다. 표준화된 라이브러리들이나 함수들을 코드에 복사해 사용하는 것처럼 패턴들을 붙여 넣기 식으로 사용할 수 없습니다. 패턴은 재사용할 수 있는 코드 조각이 아니라 특정 문제를 해결하는 방식을 알려주는 일반적인 개념입니다. 쉽게 말해 프로그래밍할 때 문제를 해결하고자 코드의 구조들을 일정한 형태로 만들어 재이용하기 편리하게 만든 일정한 패턴입니다.
디자인 패턴(Design Pattern)의 3가지 카테고리
GoF의 디자인패턴에서는 객체지향적 디자인 패턴의 카테고리를 생성 패턴(Creational Pattern), 구조 패턴(Structural Pattern), 행동 패턴(Behavioral Pattern) 3가지로 구분하고 있습니다.
- 생성 패턴 : 객체 생성에 대한 패턴 / 캡슐화 + 유연성 목표
- 구조 패턴 : 구조를 유연하고 효율적으로 유지하면서 객체와 클래스를 더 큰 구조로 조합하는 방법을 설명. 구조가 복잡한 시스템 개발에 도움을 줄 수 있음.
- 행동패턴 : 객체 간의 효과적인 의사소통과 책임 할당을 처리. 상호작용이나 책임 분배에 대한 부분을 정의하고 결합도는 최소화 하는 것이 목표
디자인 패턴(Design Pattern) 사용 시 장단점
- 장점
- 개발자 간의 원활한 의사소통
- 소프트웨어 구조 파악 용이
- 재사용을 통한 개발 시간 단축
- 설계 변경 요청에 대한 유연한 대처 - 단점
- 객체지향 설계/구현 위주로 사용됨
- 초기 투자 비용 부담
#참조
https://refactoring.guru/ko/design-patterns
디자인 패턴들
refactoring.guru
https://readystory.tistory.com/114
디자인 패턴(Design Pattern)이란?
객체지향 소프트웨어를 '잘' 설계한다는 것은 쉬운 일이 아닙니다. 게다가, 재사용할 수 있는 객체지향 소프트웨어를 만드는 것은 더 힘듭니다. 설계를 할 때에는 지금 당장 갖고 있는 문제를 해
readystory.tistory.com
https://y-oni.tistory.com/53#toc111
GoF(Gang of Four)란? 디자인패턴
GoF(Gang of Four) 란? 《디자인 패턴》(Design Patterns, ISBN 0-201-63361-2)은 소프트웨어 설계에 있어 공통된 문제들에 대한 표준적인 해법과 작명법을 제안한 책이다. 이 분야의 사인방(Gang of Four, 줄여 GoF)
y-oni.tistory.com