생성 패턴 5
암기 법 : 싱글 팩토리 빌드 프로토스 앱
| 패턴 | 설명 |
|---|---|
| Singleton | 인스턴스 하나임을 보장 |
| Factory Method | 객체 생성을 서브클래스에 위임 |
| Builder | 동일한 생성 절차, 다양한 결과 표현 |
| Prototype | 기존 객체 복사 |
| Abstract Method | 구체적인 클래스에 의존하지 않고 생성 |
구조 패턴 7
암기 법 : 브플어오르는 퍼프 어데있나?
| 패턴 | 설명 |
|---|---|
| Adapter | 호환 |
| Decorator | 조합을 통해 동적 기능 추가 |
| Facade | 단순화된 통합 인터페이스 제공 |
| Proxy | 대리 객체 제공 |
| Bridge | 추상부과 구현부 분리 |
| Flyweight | 재사용, 메모리 절약 |
| Composite | 객체를 트리구조로 구성 |
행위 패턴 11
| 패턴 | 설명 |
|---|---|
| Chain of Responsibility | 처리 불가 시 다음 객체로 전달 |
| Command | 요청을 캡슐화, 취소/로그 저장 등 지원 |
| Interpreter | 언어 문장 해석 |
| Iterator | 순차 접근 |
| Mediator | 중재자 객체 |
| Memento | 상태 저장, 이전 상태 복원 |
| Observer | 상태 변화 관찰 |
| State | 상태 전이 표현 |
| Strategy | 알고리즘 교체 |
| Template Method | 알고리즘을 상위에서 정의하고, 하위에서 세부 구현 |
| Visitor | 구조 변경 없이 새로운 연산 추가, 개방-폐쇄 원칙 실현 |
자료 결합도 (Data) : 값 전달
스탬프 결합도 (Stamp) : 배열, 오브젝트 전달
제어 결합도 (Control) : 제어 요소 전달
외부 결합도 (External) : 외부에서 데이터 참조 / 외부 변수 참조
공통 결합도 (Common) : 전역변수 이용
내용 결합도 (Content) : 다른 모듈의 변수/기능 이용
기능적 응집도 (Functional) : 단일 목적 사용
순차적 응집도 (Sequential) : 출력값을 입력값으로 사용
통신적 응집도 (Communication) : 동일한 입력값과 출력값 사용
절차적 응집도 (Procedual) : 순차적으로 수행
시간적 응집도 (Temporal) : 특정 시간에 처리
논리적 응집도 (Logical) : 유사한 성격
우연적 응집도 (Coincidental) : 연관 없는 경우
단일 책임 원칙 - Single Responsibility Principle : 하나의 클래스는 하나의 책임만 가진다
개방-폐쇄 원친 - Open-closed Principle : 확장에는 열려있는 수정에는 닫혀있어야 한다
리스코프 치환 원치 - Liskov Substitution Principle : 부모 클래스 인스턴스를 자식 클래스 인스턴스로 대체해도 정상적으로 동작
인터페이스 분리 원칙 - Interface Segregation Principle : 사용하지 않은 인터페이스 의존관계 X
의존성 역전 원칙 - Dependency Inversion Principle : 구체적인 클래스보다 추상화에 의존
| 용어 | 키워드 |
|---|---|
| 객체 / 정보 모델링 Obejct | 객체 간의 관계 정의 / E-R 다이어그램 / 객체 다이어그램 |
| 동적 모델링 Dynamic | 상태 다이어그램 |
| 기능 모델링 Functional | DFD 자료 흐름도 |
구조 다이어그램 : 클래스 다이어그램, 패키지 다이어그램
행위 다이어그램 : 유스케이스 다이어그램