일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- SJF
- Security
- 유스케이스
- STCF
- MAC
- Waterfall
- frequency-domain spectrum analysis
- SDLC
- 게임개발
- link layer
- DP
- OWASP
- 배경 그림
- Unity #Indie Game
- polymorphism
- DSP
- 게임 개발
- FIFO
- 유니티
- OSI 7계층
- 메카님
- 컴퓨터 네트워크
- stride
- AINCAA
- MLFQ
- unity
- information hiding
- Trap
- protection
- 운영체제
- Today
- Total
다양한 기록
클래스 다이어그램 본문
연관 관계
두 개 이상의 클래스 간 관련성을 뜻함
메시지 전달의 통로 역할 .. 다른 객체에게 메시지를 전달함으로써 해당 객체의 기능 이용
방향성 지정 가능
연관 관계의 다중성
집합/포함 관계
검은색 다이아: 포함
흰색 다이아: 집합
- 집합 관계에서는 객체가 포함이 될 수도 있고 아닐 수도 있음
- 포함 관계에서는 객체가 반드시 포함되어야 함
- 집합 관계에서는 부분 객체가 다수의 전체 객체에 의해 공유
- 포함 관계에서는 부분 객체가 오직 하나의 전체 객체에 소속- 반드시 has-a 관계 성립
일반화 관계
- 많은 클래스 간의 일반화 관계를 전체적으로 정의한 것을 일반화 계층 구조라 함
- 하위 클래스가 상위 클래스의 모든 특성을 보유함
- 물려받은 속성과 연산을 특별히 표시하지 않음
- 추상 클래스는 객체를 생성할 수 없는 클래스, 이탤릭으로 표현
- 일반화 관계는 다형성을 가능하게 함
- 상위 클래스의 모둔 맴버는 모든 하위 클래스에게 의미가 있어야 함
- Is-a 관계
상위 클래스와 하위 클래스 간 의미적 차이는 적절해야 함
형제 클래스들은 동등한 수준의 개념을 의미해야 함
추상 클래스와 인터페이스의 차이
- 인터페이스는 제공될 기능에 대한 명세
- 인터페이스에 기술된 기능은 클래스나 컴포넌트에 의해 구현됨
구분 | 구체 클래스 | 추상 클래스 | 인터페이스 |
객체의 생성 | 가능 | 불가능 | |
용도 | 기능의 구현 | 기능의 명세 |
구분 | 추상 클래스 | 인터페이스 |
구현의 포함 여부 | 일부 가능 | 불가능 |
명세의 영향 대상 | 자식 클래스 (Is-A 관계 준수) |
임의의 구현 클래스 |
의존 관계
클래스 간의 의존 관계는 두 클래스의 연산 간 호출 관계 표현
- 의존 관계는 제공자의 변경이 이용자에 영향을 미칠 수 있음을 뜻함
- 의존 관계는 제공자의 변경이 이용자의 변경을 유발함을 의미
이용자는 의존 관계를 통해 제공자의 연산을 호출 가능
- 연관 관계와 마찬가지로 의존 관계가 있는 클래스 간에 메시지 전달 가능
- 이용자 클래스는 제공자 클래스의 연산을 호출 가능
구분 | 연관 관계 | 의존 관계 |
역할 | 메시지 전달의 통로 | |
관계의 발생 형태 | 상대 클래스의 속성으로 대응 | 해당 연산의 인자 클래스 해당 연산 내부 객체의 클래스 해당 연산에서 접근하는 전역 객체의 클래스 |
관계의 지속 범위 | 해당 객체의 생명주기 | 해당 연산 내부 |
방향성 | 양방향 가능 | 단방향 |
연관: 내부 속성으로 가짐 .. 지속적
의존: 인자로 받거나, 전역 객체에 접근하는 등 .. 일시적
'소프트웨어공학' 카테고리의 다른 글
Process in Software Engineering (0) | 2024.10.26 |
---|---|
분석 클래스 모델의 작성 (0) | 2024.10.26 |
분석 단계 개요 (0) | 2024.10.26 |
유스케이스의 조직화 (0) | 2024.10.26 |
유스케이스 모델 구조화 (0) | 2024.10.25 |