패턴
디자인 패턴, 아키텍처 패턴 등
상위 문서: ROOT
- 패턴에 대한 가장 중요한 지식은, 패턴을 적용해야 할 상황에 대한 지식이다.
Documents
- 추상 팩토리 패턴 (Abstract Factory Pattern)- 서로 관련성이 있는 다양한 객체를 생성하기 위한 인터페이스를 제공한다
- 어댑터 패턴 (Adapter Pattern)- 서로 일치하지 않는 인터페이스를 가진 클래스를 함께 동작시킨다
- 빌더 패턴(Builder Pattern)- 객체의 생성 방법과 표현 방법을 분리한다
- 책임연쇄 패턴 (Chain of Responsibility Pattern)- 요청을 처리할 객체가 나타날 때까지 객체 연결을 따라간다
- 커맨드 패턴 (Command Pattern)- 요구 사항을 객체로 캡슐화한다
- 컴포짓 패턴 (Composite Pattern)- 개별 객체와 복합 객체를 모두 동일하게 다룰 수 있도록 한다.
- 컨트롤러 패턴 (Controller Pattern)- UI 계층으로부터 가장 먼저 메시지를 받는 객체는 누구인가?
- 데코레이터 패턴 (Decorator Pattern)- 객체에 동적으로 새로운 책임을 추가한다
- 방어적 복사 (defensive copy)- 검사시점/사용시점 취약점을 방어하자
- 엔티티 (Entity)
- 퍼사드 패턴 (Facade Pattern)- 복잡한 서브 시스템에 대해 간단한 인터페이스를 제공한다
- 팩토리 (Factory)- 다른 객체를 생성하는 책임을 갖는 프로그램 요소
- 팩토리 메소드 패턴 (Factory Method Pattern)- 객체를 생성하기 위한 인터페이스를 정의하고, 인스턴스 생성은 서브클래스가 결정하게 한다
- fan in, fan out
- 인터프리터 패턴 (Interpreter Pattern)- 언어를 위한 인터프리터를 구현한다.
- 계층형 아키텍처 (Layered Architecture)
- 마커 인터페이스 패턴 (Marker Interface Pattern)
- 마이크로서비스 아키텍처 스타일
- 널 오브젝트 패턴 (Null Object Pattern)- 인터페이스는 구현하지만 아무 일도 하지 않는 객체
- 옵저버 패턴(Observer Pattern)- 상태 변화를 감시자에게 통지한다
- 파이프라인 (Pipeline)- 데이터 스트림을 처리하는 시스템 구조를 제공한다
- 프로토타입 패턴 (Prototype Pattern)- 프로토타입(원형)을 복제해서 새로운 객체를 생성한다
- 프록시 패턴 (Proxy Pattern)- 컴포넌트 자체가 아니라 컴포넌트의 대리자와 통신하도록 해준다
- 디자인 패턴 인용문 모음
- 저장소 패턴 (Repository Pattern)- 영속적 저장소를 추상화한다.
- 서비스 (Service)
- 사이드카 패턴 (Sidecar Pattern)
- 스테이트 패턴 (State Pattern)- 객체의 내부 상태에 따라 행동을 변경할 수 있다.
- 정적 팩토리 메서드(static factory method)- static 메서드로 객체 생성을 캡슐화한다
- 교살자 패턴, 스트랭글러 패턴 (strangler pattern)- 레거시 시스템을 점진적으로 교체하여 레거시 시스템을 단계적으로 페이드아웃한다
- 전략 패턴 (Strategy Pattern)- 동일 계열의 알고리즘을 정의하고 상호교환이 가능하게 한다
- 템플릿 메소드 패턴 (Template Method Pattern)- 알고리즘의 일부 단계를 서브클래스에서 정의한다
- 값 객체 (Value Object)
- 비지터 패턴 (Visitor Pattern)