티스토리 뷰
클래스 다이어그램이란?
-객체지향 소프트웨어 개발에서 가장 기본적인 다이어그램중 하나입니다. 주로 시스템을구성하는 클래스들의 정적인구조와 관계를 표현합니다. 이 다이어그램은 인스턴스 클래스가 있고, 그들간의 상속,연관관계,의존관계 등을 보여주며, 시스템의 구성요소와 이들간의 관계를 시각화하여 개발자들이 시스템 구조를 이해하고 구현하기 쉽게 도와주는 다이어그램입니다.
클래스(Class)
-객체의 클래스를 나타냅니다. 객체지향에서의 클래스의 개념과 같이 클래스의 이름,속성, 메서드 등이 존재합니다. 이런 개념을 표시하기위해 다양한 표시가 있습니다. "<<>>" 표시를 통해 인터페이스,추상클래스등의 개념도 적용가능합니다.
Person |
-age : int -name : String height : float |
+wear_shirt(String) -eat_food(String) . . . |
접근제어자 -> 위의 메서드와 속성을 나타낼때 접근제어자를 앞에 적어주셔야합니다.
- + : public
- - : private
- # : protected
- ~ : package
속성 -> 클래스가 가지고있는 정보를 뜻합니다.
-(접근제어자) (정보이름) : (정보타입) 형식으로 표시됩니다.
메서드 -> 클래스가 가지고있는 함수를 뜻합니다.
-(접근제어자) (메서드이름(파라미터 속성)) : (리턴값) 형식으로 표시됩니다.(위의 예시에선 리턴값은 생략했습니다.)
연관관계 ->
관계 | 기호 |
Generalization(일반화) | ![]() |
Realization(실체화) | ![]() |
Dependency(의존) | ![]() |
Association(연관) | ![]() |
Directed Association(직접연관) | ![]() |
Aggregation(집합,집합연관) | ![]() |
Composition (합성, 복합연관) | ![]() |
-Generalization(일반화) - 상속관계를 표현하비다. 하위클래스가 상위 클래스의 특성을 상속받고 다형성을 구현하는데 유용합니다.
-Realiztion(실체화) - 인터페이스를 실제로 오버라이딩하고 구현하는것을 표현할때 사용합니다.
-Dependency(의존) - 한 요소가 다른 요소에게 의존하는 관계를 나타냅니다.
-Association(연관) - 두 클래스 간의 상호작용을 나타냅니다. 즉 클래스들의 인스턴스 끼리의 관계를 나타내는데 다른 객체의 참조를 가집니다.
-Directed Association(직접연관) - 연관관계가 일방향인 경우를 표시합니다.
-Aggregation(집합,집합연관) - 연관관계가 집합인 경우를 표시합니다. 즉, 한클래스의 객체가 다른 클래스의 객체의 집합을 가지는 관계입니다.
-Composition (합성, 복합연관) - 연관관계가 객체 전부인 경우를 표시합니다. 즉, 한클래스의 객체전체가 다른 클래스의 객체 일부를 구성하는 관계입니다.
'소프트웨어 공학' 카테고리의 다른 글
소프트웨어 테스트 (0) | 2023.05.07 |
---|---|
소프트웨어 아키텍처 (0) | 2023.04.06 |
데이터 흐름도(DFD,Data Flow Diagram) (0) | 2023.04.02 |
프로세스 모델이란? (폭포수,나선형,애자일) (0) | 2023.03.25 |
소프트웨어 공학이란? (0) | 2023.03.25 |
- Total
- Today
- Yesterday
- 소프트웨어공학
- JPA
- 테이블
- 서버
- 문법
- 웹소켓
- IP주소
- 쿼리
- 도커
- nat
- 보안
- 배포
- 네트워크
- 자동화
- 깃허브
- sql
- 메세지큐
- 컴퓨터구조
- DB
- 클라우드
- 프로토콜
- 데이터베이스
- 인공지능
- 컨테이너
- 깃
- 데이터
- 스프링
- 파인튜닝
- 포트포워딩
- 자바
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |