해당 포스트는 "자바 객체지향 디자인 패턴", "JAVA 언어로 배우는 디자인 패턴 입문" 책의 내용을 요약한 것이다.



: 소프트웨어를 설계할 때 특정 맥락에서 자주 발생하는 고질적인 문제들이 또 발생했을 때 재사용할 수 있는 훌룡한 해결책


"바퀴를 다시 발명하지 마라"


 위 말은 불필요하게 이미 만들어져서 잘 되는 것을 처음부터 다시 만들 필요가 없다는 의미이다. 이미 오래 전에 발명되어 잘 굴러가는 데 처음부터 다시 바퀴를 발명하겠다는 것은 불필요한 일이다. 디자인 패턴도 마찬가지다. 각 패턴은 자주 반복해서 발생하는 문제와 그 문제를 해결하는 핵심을 기술해 동일한 일을 두 번 다시 하지 않고 해결할 수 있도록 한다.



- 디자인 패턴 분류

1. 생성 패턴 : 객체 생성에 관련된 패턴, 객체의 생성과 조합을 캡슐화해 특정 객체가 생성되거나 변경되어도 프로그램 구조에 영향을 크게 받지 않도록 유연성 제공.

ex) 팩토리 메서드, 추상 팩토리, 빌더, 프로토타입, 싱글턴 패턴


2. 구조 패턴 : 클래스나 객체를 조합해 더 큰 구조를 만드는 패턴

ex) 어댑터, 퍼사드, 브리지, 컴퍼지트, 플라이웨이트 패턴


3. 행위 패턴 : 객체나 클래스 사이의 알고리즘이나 책임 분배와 관련된 패턴. 예를 들어 한 객체가 혼자 수행할 수 없는 작업을 여러 개의 객체로 어떻게 분배하는 지, 또 그렇게 하면서도 객체 사이의 결합도를 최소화하는 것에 중점을 둔다.

ex) 커맨드, 인터프리터, 이터레이터, 모멘토, 옵서버, 스테이트 ,스트래티지, 비지터

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

싱글턴(Singleton) 패턴  (0) 2017.07.03
스트래티지(Strategy, 전략) 패턴  (0) 2017.07.01
책임 연쇄/사슬 패턴  (0) 2017.06.08
생성자의 인자가 많을 시 빌더 패턴  (0) 2017.06.08
플라이웨이트 패턴  (0) 2017.06.08

+ Recent posts