UML 클래스 다이어그램 튜토리얼: 예제가 포함된 추상 클래스

UML 다이어그램의 클래스란 무엇입니까?

A UML의 클래스 다이어그램은 개체 또는 개체 집합을 만드는 데 사용되는 청사진입니다. 클래스는 객체가 무엇을 할 수 있는지 정의합니다. 다양한 객체를 생성하고 시스템에서 해당 동작을 구현하는 템플릿입니다. UML의 클래스는 클래스 이름, 속성 및 작업이 포함된 행을 포함하는 직사각형으로 표시됩니다.

클래스 다이어그램이란 무엇입니까?

A 클래스 다이어그램 소프트웨어 공학에서 클래스, 속성, 작업 및 서로 간의 관계를 표시하여 소프트웨어 시스템의 개요를 제공하는 정적 구조입니다. 이 다이어그램에는 별도의 지정된 구획에 클래스 이름, 속성 및 작업이 포함되어 있습니다. 클래스 다이어그램은 소프트웨어 애플리케이션 개발을 위한 코드를 구성하는 데 도움이 됩니다.

클래스 다이어그램은 시스템의 개체 유형과 개체 사이에 존재하는 다양한 유형의 관계를 정의합니다. 이는 애플리케이션에 대한 높은 수준의 보기를 제공합니다. 이 모델링 방법은 거의 모든 객체 지향 방법으로 실행될 수 있습니다. 클래스는 다른 클래스를 참조할 수 있습니다. 클래스는 객체를 가질 수도 있고 다른 클래스로부터 상속받을 수도 있습니다.

클래스 다이어그램의 이점

  • 클래스 다이어그램은 매우 다양한 기업에 대한 데이터 모델을 보여줍니다.plex 정보 시스템
  • 실제 코드를 연구하기 전에 애플리케이션이 어떻게 구성되어 있는지에 대한 개요를 제공합니다. 유지관리 시간을 쉽게 줄일 수 있습니다.
  • 이는 애플리케이션의 일반적인 회로도를 더 잘 이해하는 데 도움이 됩니다.
  • dra 허용wing 프로그래밍에 필요한 코드를 강조하는 자세한 차트
  • 개발자 및 기타 이해관계자에게 도움이 됩니다.

UML 클래스 다이어그램의 필수 요소

UML 클래스 다이어그램의 필수 요소는 다음과 같습니다.

  1. 클래스 이름
  2. Attributes
  3. 행정부

클래스 이름

UML의 클래스 이름

클래스 이름은 클래스의 그래픽 표현에만 필요합니다. 맨 위 칸에 나타납니다. 클래스는 동일한 관계, 속성, 작업 및 의미를 공유할 수 있는 객체의 청사진입니다. 클래스는 별도의 구획에 이름, 속성 및 작업을 포함하여 직사각형으로 렌더링됩니다.

FOLLOwing 클래스를 대표하는 동안 다음과 같은 규칙을 주의해야 합니다.

  1. 클래스 이름은 항상 대문자로 시작해야 합니다.
  2. 클래스 이름은 항상 첫 번째 구획의 중앙에 있어야 합니다.
  3. 클래스 이름은 항상 다음과 같이 작성해야 합니다. 일시: XNUMX년 XNUMX월 XNUMX일 화요일 XNUMX:XNUMXpm - XNUMX:XNUMXpm 장소: 여의도 페어몬트 앰배서더 서울 호텔 XNUMXF 아잘레아스 룸 [약도] 행사 문의: info.korea@rescale.com 형식입니다.
  4. UML 추상 클래스 이름은 이탤릭체로 작성해야 합니다.

Attributes

속성은 모델링되는 객체를 설명하는 클래스의 속성으로 명명됩니다. 클래스 다이어그램에서 이 구성 요소는 이름 구획 바로 아래에 배치됩니다.

UML의 속성

파생 속성은 다른 속성에서 계산됩니다. 예를 들어, 학생의 나이는 생년월일을 통해 쉽게 계산할 수 있습니다.

UML의 속성

속성 특성

  • 속성은 일반적으로 가시성 요소와 함께 작성됩니다.
  • 공개, 비공개, 보호 및 패키지는 각각 +, -, # 또는 ~ 기호로 표시되는 네 가지 가시성입니다.
  • 가시성은 클래스 속성의 접근성을 설명합니다.
  • 속성에는 클래스에서의 사용을 설명하는 의미 있는 이름이 있어야 합니다.

관계

크게 XNUMX가지 종류가 있는데 UML의 관계:

  1. 종속성
  2. 일반화
  3. 협회

의존

종속성은 하나가 변경되면 다른 클래스도 변경될 수 있는 둘 이상의 클래스 간의 관계를 의미합니다. 그러나 그것은 항상 더 약한 관계를 만들 것입니다. 종속성은 한 클래스가 다른 클래스에 종속됨을 나타냅니다.

팔로우에서wing UML 클래스 다이어그램 예, 학생은 대학에 종속됩니다.

UML의 관계

일반화:

UML의 관계

일반화는 하위 클래스를 상위 클래스에 연결하는 데 도움이 됩니다. 하위 클래스는 상위 클래스에서 상속됩니다. 일반화 관계는 인터페이스 구현을 모델링하는 데 사용할 수 없습니다. 클래스 다이어그램을 사용하면 여러 슈퍼클래스에서 상속할 수 있습니다.

이 예에서 Student 클래스는 Person 클래스에서 일반화되었습니다.

협회:

이러한 종류의 관계는 클래스 A와 B 간의 정적 관계를 나타냅니다. 예를 들면 다음과 같습니다. 직원이 조직에서 일합니다.

연결에 대한 몇 가지 규칙은 다음과 같습니다.

  • 연관은 대부분 동사 또는 동사구 또는 명사 또는 명사구입니다.
  • 연결 경로 끝에 연결된 클래스가 수행하는 역할을 나타내도록 이름을 지정해야 합니다.
  • 반사적 연관에 필수

이 예에서는 학생과 대학의 관계, 즉 공부를 보여줍니다.

UML의 관계

다수

UML의 관계

다중성은 속성과 관련된 요소입니다. 클래스가 초기화될 때 생성되는 속성의 인스턴스 수를 지정합니다. 다중성을 지정하지 않으면 기본적으로 다중성이 기본 다중성으로 간주됩니다.

한 대학에 100명의 학생이 있다고 가정해보자. 대학에는 여러 명의 학생이 있을 수 있습니다.

집합

집계는 집계와 해당 부분 간의 전체 부분 관계를 모델링하는 특별한 유형의 연관입니다.

UML의 관계

예를 들어, 학급 대학은 한 명 이상의 학생으로 구성됩니다. 집계에서 포함된 클래스는 컨테이너의 수명 주기에 전적으로 의존하지 않습니다. 여기서는 학생이 결석하더라도 대학 수업은 그대로 유지됩니다.

구성 :

UML의 관계

구성은 한 클래스가 다른 클래스의 일부일 때 두 클래스 간의 강력한 소유권을 나타내는 특별한 유형의 집계입니다.

예를 들어, 대학이 학생 수업으로 구성되어 있는 경우입니다. 대학에는 많은 학생이 포함될 수 있지만 각 학생은 하나의 대학에만 속합니다. 따라서 대학이 제대로 기능하지 않으면 모든 학생들도 제거됩니다.

집계 대 구성

집합 조성
집계는 하위 클래스가 상위 클래스와 별도로 존재할 수 있는 관계를 나타냅니다. 예: 자동차(상위) 및 자동차(하위). 따라서 자동차를 삭제해도 하위 자동차는 여전히 존재합니다. 하위 항목이 상위 항목과 별도로 존재하지 않는 컴포지션 표시 관계입니다. 예: 집(부모) 및 방(자식). 방은 결코 집으로 분리되지 않습니다.

추상 클래스

작업 프로토타입이 있는 클래스이지만 구현은 없습니다. 내부에 연산이 선언되지 않은 추상 클래스를 갖는 것도 가능합니다. 요약은 클래스 전체의 기능을 식별하는 데 유용합니다. 추상 클래스의 예를 살펴보겠습니다. 내부에 선언된 메서드나 작업이 있는 모션이라는 추상 클래스가 있다고 가정해 보겠습니다. 추상 클래스 내부에 선언된 메소드를 이동하다 ().

이 추상 클래스 메소드는 자동차, 동물, 로봇 등 모든 객체에서 현재 위치를 변경하는 데 사용할 수 있습니다. 주어진 함수에 대한 구현이 제공되지 않기 때문에 객체와 함께 이 추상 클래스 메서드를 사용하는 것이 효율적입니다. 여러 객체에 어떤 방식으로든 사용할 수 있습니다.

UML에서 추상 클래스는 클래스와 동일한 표기법을 갖습니다. 클래스와 추상 클래스의 유일한 차이점은 클래스 이름이 이탤릭체로 엄격하게 작성된다는 것입니다.

추상 클래스는 초기화하거나 인스턴스화할 수 없습니다.

추상 클래스 표기법
추상 클래스 표기법

위의 추상 클래스 표기법, 클래스의 여러 개체에서 사용할 수 있는 유일한 추상 메서드가 있습니다.

UML 클래스 다이어그램의 예

클래스 다이어그램을 만드는 것은 간단한 과정입니다. 많은 기술이 필요하지 않습니다. 예는 다음과 같습니다.

ATM 시스템은 고객이 현금을 받으려면 몇 개의 버튼을 눌러야 하므로 매우 간단합니다. 그러나 ATM 시스템이 통과해야 하는 여러 보안 계층이 있습니다. 이는 사기를 방지하고 현금을 제공하거나 필요한 자금을 제공하는 데 도움이 됩니다.tails 은행 고객에게.

아래에는 UML 클래스 다이어그램 예가 나와 있습니다.

UML 클래스 다이어그램 예

UML 클래스 다이어그램 예

또한 확인:- UML 다이어그램: 기록, 유형, 특성, 버전, 도구

소프트웨어 개발 수명주기의 클래스 다이어그램

클래스 다이어그램은 다양한 소프트웨어 개발 단계에서 사용될 수 있습니다. 세 가지 다른 관점에서 클래스 다이어그램을 모델링하는 데 도움이 됩니다.

1. 개념적 관점: 개념 다이어그램은 현실 세계의 사물을 설명합니다. 연구 중인 영역의 개념을 나타내는 다이어그램을 그려야 합니다. 이러한 개념은 클래스와 관련이 있으며 항상 언어 독립적입니다.

2. 사양 관점: 사양 관점에서는 사양과 인터페이스가 포함된 소프트웨어 추상화 또는 구성 요소를 설명합니다. 그러나 구체적인 구현에 대한 약속은 제공하지 않습니다.

3. 구현 관점: 이러한 유형의 클래스 다이어그램은 특정 언어 또는 애플리케이션의 구현에 사용됩니다. 구현 관점, 소프트웨어 구현에 사용됩니다.

클래스 다이어그램 설계 모범 사례

클래스 다이어그램은 소프트웨어 애플리케이션 개발에 사용되는 가장 중요한 UML 다이어그램입니다. dra를 하는 동안 고려해야 할 많은 속성이 있습니다.wing 클래스 다이어그램. 이는 소프트웨어 응용 프로그램의 다양한 측면을 나타냅니다.

다음은 dra를 하는 동안 명심해야 할 몇 가지 사항입니다.wing 클래스 다이어그램:

  • 클래스 다이어그램에 부여된 이름은 의미가 있어야 합니다. 또한 시스템의 실제 측면을 설명해야 합니다.
  • 각 요소 간의 관계를 미리 파악해야 합니다.
  • 모든 클래스에 대한 책임을 식별해야 합니다.
  • 모든 클래스에 대해 최소 속성 수를 지정해야 합니다. 따라서 원치 않는 속성으로 인해 다이어그램이 쉽게 복잡해질 수 있습니다.
  • 다이어그램의 일부 측면을 정의해야 할 때마다 사용자 메모를 포함해야 합니다. 드라마가 끝나면wing, 소프트웨어 개발팀이 이해할 수 있어야 합니다.
  • 마지막으로 최종 버전을 만들기 전에 일반 종이에 다이어그램을 그려야 합니다. 또한 최종 제출 준비가 될 때까지 재작업해야 합니다.

“내게 능력 주시는 자 안에서 내가 모든 것을 할 수 있느니라”

  • UML은 소프트웨어 시스템의 결과물을 지정, 설계 및 시각화하기 위한 표준 언어입니다.
  • 클래스는 객체의 청사진이다
  • 클래스 다이어그램은 시스템의 객체 유형과 객체 사이에 존재하는 다양한 종류의 관계를 설명합니다.
  • 소프트웨어 애플리케이션의 정적 뷰를 분석하고 설계할 수 있습니다.
  • 클래스 다이어그램은 소프트웨어 애플리케이션 개발에 사용되는 가장 중요한 UML 다이어그램입니다.
  • UML 클래스 다이어그램의 필수 요소는 1) 클래스 2) 속성 3) 관계입니다.
  • 클래스 다이어그램은 실제 코드를 연구하기 전에 애플리케이션이 어떻게 구성되어 있는지에 대한 개요를 제공합니다. 확실히 유지관리 시간이 단축됩니다
  • 클래스 다이어그램은 Java, C++, Ruby, Python 등과 같은 객체 지향 프로그래밍 언어를 매핑하는 데 유용합니다.

또한 확인:- 초보자를 위한 UML 다이어그램 튜토리얼: 무료로 온라인으로 UML 배우기