UML - 클래스 다이어그램 (0621)

왕감자·2024년 7월 17일

KB IT's Your Life

목록 보기
88/177
  • 객체 간의 관계를 표현하는 기법
  • 설계 문서의 핵심

UML 클래스 표현

  • 속성과 메서드는 관심에 따라 생략 가능


객체 간의 관계

연관 관계

  • 실선
  • 역할: 클래스 바로 옆 연관 관계를 나타내는 선 가까이 기술
  • 다중성 표현

  • 방향성
    • 양방향: 화살표 사용X, 서로의 존재를 인지
    • 단방향: 한 쪽은 알지만 다른 쪽은 상대방의 존재를 모른다는 의미
  • 연관 클래스: 관계를 통해 파생되는 정보, 연관 관계에 추가할 속성이나 행위가 있을 경우


의존 관계

  • 한 클래스에서 다른 클래스를 사용하는 경우
    • 클래스의 속성에서 참조
    • 연산의 인자로 참조
    • 메소드의 지역 개체로 참조
  • 실선: 지속적인 관계
  • 점선: 일시적


집합 관계

마름모: 멤버 필드

  • 집약(aggregation): 약한 결합 (loosely-coupled) ▶ 추구 해야 함
    • 전체 나타내는 객체 / 부분 나타내는 객체 라이프 타임 독립적
    • 부분 나타내는 객체를 다른 객체와 공유 가능
    • 빈 마름모
  • 합성(composition): 강한 경합(tightly-coupled)
    • 전체 나타내는 객체 / 부분 나타내는 객체 라이프 타임 종속적
    • 전체 객체 사라지면 부분 객체도 사라짐
    • 채워진 마름모

일반화 관계

  • 일반화는 상속 (추상)
  • 삼각형 화살표 + 실선
  • is a kind of
    • 세탁기 is a kind of 가전 제품
    • TV is a kind of 가전 제품
    • 식기세척기 is a kind of 가전 제품

실체화 관계

  • 인터페이스와 실체화 관계
  • 인터페이스란 책임이다
  • 인터페이스: <<interface>> InterfaceName (italic)
    • only 이탈릭체 : 추상 클래스
  • 삼각형 화살표 + 점선

0개의 댓글