TIL(D+33). 디자인 패턴
2021.07.29
1. 개요
디자인 패턴은 각 모듈의 세분화된 역할이나 모듈들 간의 인터페이스와 같은 코드를 작성하는 수준의 세부적인 구현 방안을 설계할 때 참조할 수 있는 전형적인 해결 방법 또는 예제를 의미한다.
* 문제 및 배경, 실제 적용된 사례, 재사용이 가능한 샘플 코드 등으로 구성되어 있다.
* 문제가 발생하면 새로 해결책을 구상하는 것보다 문제에 해당하는 디자인 패턴을 참고하는게 효율적이다.
2. 장점과 단점
장점
* 구조 파악이 용이하다.
* 객체지향 설계 및 구현의 생선을 높이는 데 적합하다.
* 개발 시간과 비용이 감소하단.
* 개발자 간의 원할한 의사소통이 가능하다.
* 설계 변경 요청에 대한 유연한 대처가 가능하다.
단점
* 초기 투자 비용이 부담될 수 있다.
* 객체지향을 기반으로 한 설계와 구현을 다루므로 다른 기반의 애플리케이션 개발에는 적합하지 않다.
3. 생성 패턴
객체의 생성과 참조 과정을 캡슐화 하여 객체가 생성, 변경되어도 프로그램의 구조에 영향을 받지 않도록 하여 프로그램에 유연성을 더해준다.
추상 팩토리
빌더
팩토리 메소스
프로토타입
싱글톤
4. 구조 패턴
복잡한 시스템을 개발하지 쉽게 도와준다.
어탭터
브리지
컴포지트
데코레이터
퍼싸드
플라이웨이트
프록시
5. 행위 패턴
하나의 객체로 수행할 수 없는 작업을 여러 객체로 분배하면서 결합도를 최소화 할 수 있도록 해준다.
책임 연쇄
커맨드
인터프리터
반복자
중재자
메멘토
옵서버
상태
템블릿 메소드
방문자
댓글을 작성해보세요.