최범균님의 - UML 기초 01 - 클래스 다이어그램 유튜브 강의를 정리한 글입니다.
link : https://www.youtube.com/watch?v=HG0dwNnTsII&list=PLwouWTPuIjUgd-1167R5\_6gTBsp\_9cfu3
1. 클래스 다이어그램이란
- 객체의 타입을 표현
- 타입 간의 정적 관계 기술
- 전달하고자 하는 내용 위주로 표시
- 반드시 모든 것을 다 표시하는 것이 아님
- UML로 완벽하게 표현할 수도 없음
2. 클래스 다이어그램 구조
- 클래스 이름
- 속성
- 오퍼레이션
1) 속성 표기법
- 가시성 이름 : 타입 = 기본값
- 가시성 : +(public), -(private), #(protected), ~(package)
2) 오퍼레이션 표기법
- 가시성 이름 (매개변수 목록) : 리턴타입
3. 연관관계 (association)
✔️ 클래스 다이어그램에서 객체 간의 구조적 관계를 선으로 표현하는 방법
- 실선 : 연관을 가짐
- 방향 : 연관 방향
- 이름 : 연관 이름
- 역할명 : 각 클래스간의 연관관계의 역할명을 가질 수 있음
- 숫자 : 객체간 다중성을 숫자로 표현가능
1) 연관 탐색 (Navigation)
- 실선에 화살표를 이용해서 탐색 가능 방향 지정
- 양쪽에 모두 지정하지 않으면 양방향 탐색 의미 (보통은 둘다 표시하지 않음)
- ex)
- order 객체가 orderLine 객체를 접근할 수 있다.
- orderLine은 order 객체에 접근할 수 없다.
2) 의존 (Dependency)
✔️ 사용 관계를 표현
- A가 변할 때 A를 사용하는 B도 변한다면 → B가 A에 의존
- 점선으로 표시
- ex)
- Controller 클래스가 Handler 클래스에 의존한다.
- Controller 클래스의 render( ) 메소드는 Template 클래스에 의존한다.
3) 인터페이스, 추상 클래스
- 인터페이스 : 꺽쇠 2개(스테레오 타입)로 인테페이스임을 알림
- 추상 클래스 : 클래스 이름이 Italic 채 (기울기) 인 것으로 표현
- 구현 : 점선
- 일반화,상속 : 실선
4) aggreagtion (소유), compostion (구성)
✔️ composition : 조금더 강력한 소유를 뜻함 (검은 마름모)
- OrderLine 의 여러 객체는 Order 가 강력한 소유 (compostion)
- Order 가 삭제될 떄 모든 OrderLine이 삭제됨
✔️ aggreagtion : 조금 더 약한관계
- Player 는 여러 Team 에 공유될 수 있음 (약한 관계)
실습..!
혹여 틀린점이 있다면 댓글로 알려주시면 감사드리겠습니다 :)
'🔥 공대생은 성장 중 > 일잘하기' 카테고리의 다른 글
개발자의 다이어그램 익숙해지기 (3) | 2024.02.02 |
---|