디자인 패턴(Design Pattern)
- 소프트웨어를 설계할 때 설계자로 부터 재사용이 가능한 설계는 선택하고, 재사용을 방해하는 설계는 배제하도록 도와주는 해결책
생성(Creational) 패턴 | 구조(Structural) 패턴 | 행동(Behavioral) 패턴 |
- 객체 생성에 관련된 패턴 - 객체의 생성과 조합을 캡슐화해 특정 객체가 생성되거나 변경되어도 프로그램에 영향을 크게 받지 않도록 유연성 제공 |
- 클래스와 객체를 더 큰 결과물로 합칠수 있는 구조로 설계 - 구조를 간결화하고 클래스와 객체 간의 상호관계 파악가능 - 클래스 상속과 컴포지션을 중시 ex) 서로 다른 인터페이스를 2개 지닌 객체를 묶어 단일 인터페이스 제공 or 객체들을 서로 묶어 새로운 기능을 제공 |
- 객체 간의 상호작용과 책임을 중시 - 객체는 상호작용하지만 느슨하게 결합되어야 한다. |
- 싱글톤 (Signleton) - 추상 팩토리 메소드 (Abstract Factory) - 팩토리 메소드 (Factory Method) - 빌더 (Builder) - 프로토타입 (Prototype) |
- 어댑터 (Adapter) - 컴퍼지트 (Composite) - 데코레이터 (Decorator) - 퍼사드 (Facade) - 플라이웨이트 (Flyweight) - 프록시 (Proxy) - 브리지 (Bridge) |
- 커맨드 (Command) - 인터프리터 (InterPreter) - 이터레이터 (Iterator) - 미디에이터 (Mediator) - 메멘토 (Memento) - 옵저버 (Observer) - 스테이트 (State) - 스트레티지 (Strategy) - 템플릿 메소드 (Template Method) - 비지터 (Visitor) - 책임 연쇄 (Chain of Responsibility) |
'JAVA > 개념' 카테고리의 다른 글
SMTP란? (0) | 2021.01.22 |
---|---|
[ 디자인 패턴 ] 템플릿 메소드패턴이란? (0) | 2021.01.20 |
[ JSP ] JSTL 이란 (0) | 2021.01.18 |
[ JSP ] EL이란? (0) | 2021.01.18 |
주요 프로그래밍 언어들의 탄생 히스토리 (0) | 2021.01.17 |