목차
- 디자인패턴
- UML
- 다이어그램
용어
1. 디자인패턴
생성 패턴
패턴 | 설명 |
추상 팩토리(Abstract Factory) | - 구체적인 클래스에 의존하지 않고 서로 연관된 객체들의 조합을 만드는 인터페이스 제공 |
빌더(Builder) | - 복합객체 생성과 표현을 분리 - 동일 생성 절차에서도 다른 표현 결과 |
팩토리 메서드(Factory Method) | - 객체 생성을 서브클래스로 위임 |
프로토타입(Prototype) | - 원본 객체를 복사함으로써 객체 생성 |
싱글톤(Singleton) | - 인스턴스를 하나로만 규정하고 돌려쓰는 패턴 |
구조 패턴
패턴 | 설명 |
어댑터(Adapter) | - 인터페이스를 변환해 다른 클래스가 이용할 수 있도록 |
브릿지(Bridge) | - 구현부에서 추상층 분리 - 각자 독립적으로 확장할 수 있도록(다리처럼 이어주는게 아님) |
컴포지트(Composite) | - 객체들의 관계를 트리 구조로 구성 - 복합 객체와 단일 객체를 구분없이 다룸 |
데코레이터(Decorator) | - 객체에 다른 객체를 덧붙이는 방식 |
퍼사드(Facade) | - 서브시스템 인터페이스 집합에 대해 통합된 고수준 인터페이스 제공 |
플라이웨이트(Flyweight) | - 작은 객체는 매번 생성하지 않고 되도록 공유할 있도록 해서 메모리 절약 |
프록시(Proxy) | - 객체의 대리자 제공 "대리"라는 단어 나오면 무조건 |
행위 패턴
패턴 | 설명 |
옵저버(Observer) | - 한 객체 상태가 변할 때 관련 객체들에게 자동으로 연락 |
방문자(Visitor) | - 수행할 연산에 대해 분리하고 별도 클래스 지정 |
전략(Strategy) | - 알고리즘을 정의하고 캡슐화하여 상호작용 가능하도록 |
상태(State) | - 객체 상태에 따라 동일한 동작을 다르게 처리 |
반복자(Iterator) | - 내부를 노출하지 않고 어떤 객체 원소를 순차적으로 접근할 수 있도록 |
템플릿메서드(Template Method) | - 상위클래스는 알고리즘 골격만 규정 하위클래스가 구체적인 처리할 있도록 |
메멘토(Memento) | - 객체를 특정 상태로 돌아갈 수 있도록 내부 상태 실체화 |
책임 연쇄(Caing of Responsbility) | - 요청을 받는 객체를 묶어 객체 Chain을 따라 요청을 전달 |
커맨드(Command) | - 요청을 객체 형태로 캡슐화해서 재사용이나 취소할 수 있도록 |
인터프리터(Interpreter) | - 특정 언어 문법 표현을 정의 |
중재자(Mediator) | - 한 집합에 속한 객체들의 상호작용을 캡슐화해서 새로운 객체 정의 |
2021년 2회
디자인 패턴 중 ( ) 패턴은 반복적으로 사용되는 객체들의 상호작용을 패턴화한 것으로 클래스나 객체들이 상호작용하는 방법이다. 관련 패턴으로는 Interpreter, Observer, Command 등이 있다.
2020년 2회
한 객체 상태가 바뀌면 의존 객체에게 연락이 가는 디자인패턴은?"
2023년 1회
( ) 은/는 복잡한 시스템을 개발하기 쉽도록 클래스나 객체를 조합하는 패턴에 속하며, 대리라는 이름으로도 불린다. 내부에서는 객체 간의 복잡한 관계를 단순하게 정리해주고 외부에서는 객체 세부인 내용을 숨기는 역할을 한다.
2022년 3회
( A )은/는 기능을 처리하는 클래스와 구현을 담당하는 추상 클래스로 구분하며, 구현뿐 아니라 추상화도 독립적 변경이 필요할 때 ( A )패턴을 사용한다.
( B ) 은/는 한 객체 상태가 변경되면 객체에 상속되어 있는 다른 객체들에게도 변화된 상태를 전달해주는 패턴이다.
2. UML
UML의 구성요소
사물, 관계, 다이어그램
UML에서의 관계
1) 일반화 관계(Generalization)
- 한 클래스가 다른 클래스를 포함하는 상위 개념일 때 관계
- 상속관계라고도함
2) 연관 관계(Association)
- 2개 이상 사물이 서로 연관된 관계
3) 의존 관계(Dependency)
- 연관 관계와 비슷하나 매우 짧은 시간만 유지
4) 실체화 관계(Realization)
- 인터페이스를 구현받아 추상 메서드를 오버라이딩 하는 것을 의미
5) 집합 관계 - 집약 관계(Aggregation)
- has a 관계
- 전체 객체가 사라져도 부분 객체는 사라지지 않음
6) 집합관계 - 합성 관계(Composition)
- 긴밀한 필수적 관계
3. 다이어그램
구조 다이어그램
종류 | 설명 |
클래스 다이어그램 | - 클래스의 속성과 클래스 사이의 관계를 표현 - 시스템 구조 파악 및 구조상 문제점 도출 |
객체 다이어그램 | - 클래스에 속한 객체를 특정 시점의 객체와 객체 사이 관계로 표현 |
컴포넌트 다이어그램 | - 컴포넌트 사이 관계나 인터페이스를 표현 |
배치 다이어그램 | - 결과물, 프로세스, 컴포넌트 등 물리적 요소들의 위치 표현 |
복합체 다이어그램 | - 클래스나 컴포넌트가 복합구조를 가질 시 그 내부 구조 표현 |
패키지 다이어그램 | - 유스케이스나 클래스 등 모델 요소들을 그룹화한 패키지들의 관계 표현 |
행위 다이어그램
종류 | 설명 |
유스케이스 다이어그램 | - 사용자 요구를 분석해 기능 모델링 작업 - 외부에서 보는 시스템 동작, 객체들이 어떻게 상호작용하는지 모델링 - 구성요소: Actor, Use Case, System |
시퀀스 다이어그램 | - 특정 행동이 어떤 순서로 어떤 객체와 상호작용하는지 표현 - 현재 시스템이 어떤 시나리오로 움직이고 있는지 나타냄 |
커뮤니케이션 다이어그램 | - 동작에 참여한 객체들이 주고받는 메시지와 객체 간 연관까지 표현 |
상태 다이어그램 | - 객체가 자신이 속한 클래스의 상태 변화 및 다른 객체 간 상호작용에 따라 상태변화 표현 |
활동 다이어그램 | - 어떤 기능을 수행하는지에 따라 처리 흐름을 순서에 따라 표현 |
상호작용 다이어그램 | - 상호작용 다이어그램 간 제어 흐름 표현 |
타이밍 다이어그램 | - 객체 상태 변화와 시간 제약을 명시적으로 표현 |
21년 3회
이 다이어그램은 문제 해결을 위한 도메인 구조를 나타내어 보이지 않는 도메인 안의 개념과 같은 추상적인 개념을 기술하기 위해 나타낸 것이다. 또한 소프트웨어의 설계 혹은 완성된 소프트웨어의 구현 설명을 목적으로 사용할 수 있다. 이 다이어그램은 속성(attribute)과 메서드(method)를 포함한다.
22년 3회
구성 요소로는 사물, ( 1 ), 다이어그램으로 이루어져 있으며, 구조 다이어그램 중, ( 2 ) 다이어그램은 시스템에서 사용되는 객체 타입을 정의하고, 그들 간의 존재하는 정적인 관계를 다양한 방식으로 표현한 다이어그램이다. 또한 UML 모델링에서 ( 3 )은/는 클래스와 같은 기타 모델 요소 또는 컴포넌트가 구현해야 하는 오퍼레이션 세트를 정의하는 모델 요소이다.
21년 3회 : 클래스 다이어그램
22년 3회 : 관계, 클래스, 인터페이스
'정보처리기사 > 내용' 카테고리의 다른 글
2023, 2024 정보처리기사 실기 핵심 요약 정리 - 정보보안 (1) | 2023.10.06 |
---|---|
2023, 2024 정보처리기사 실기 핵심 요약 정리 - 네트워크 (0) | 2023.10.06 |
2023년 3회차 대비 정보처리기사 실기 기출빈도 분석 요약 정리 (0) | 2023.09.15 |
정보처리기사 실기 원서접수 하는법, 자리 마감 시 팁 (0) | 2023.09.05 |
정보처리기사 실기 기출문제 풀이 - 2021년 3회 (0) | 2023.08.31 |