"클래스 다이어그램"의 두 판 사이의 차이

 
(사용자 4명의 중간 판 29개는 보이지 않습니다)
2번째 줄: 2번째 줄:
;class diagram
;class diagram
;클래스 다이어그램, 클래스 그림, 클래스 도표
;클래스 다이어그램, 클래스 그림, 클래스 도표
*클래스의 속성과 조작에 관한 정보 제공
* 클래스의 속성과 조작에 관한 정보 제공
*클래스, 속성, 클래스간의 관계로 시스템 구조를 기술
* 클래스, 속성, 클래스간의 관계로 시스템 구조를 기술
*클래스 다이어그램이 있으면 코드를 작성하기가 수월하다.<ref>구체적으로 메소드 동작을 어떻게 구현해야 할지까지 알려주는 것은 아니지만, 시스템 전반적인 큰 그림을 보여준다...</ref>
* 클래스 다이어그램이 있으면 코드를 작성하기가 수월하다.<ref>구체적으로 메소드 동작을 어떻게 구현해야 할지까지 알려주는 것은 아니지만, 시스템 전반적인 큰 그림을 보여준다...</ref>
*여러가지 UML 다이어그램들 중 가장 기초적인 것
* 여러가지 UML 다이어그램들 중 가장 기초적인 것
* [[속성(attirbute)]]과 [[조작(operation)]]을 가질 수 있다.
* [[속성(attribute)]]과 [[조작(operation)]]에 대해 가시성(visibility)을 표시할 수 있다.
* 작성을 시작할 때 [[유스케이스 문서]], [[도메인 모델]] 등 기존 문서가 있다면 참고할 수 있다.
* 객체의 "책임"을 추출하여 클래스를 작성한다. ([[단일 책임 원칙]])


{{클래스
{{클래스
16번째 줄: 20번째 줄:
}}
}}


==예시 1: 은행계정==
==가시성==
{{참고|가시성 (클래스 다이어그램)}}
{|class=wikitable<beta & entity><>
|style="width:3em;text-align:center"| <code>+</code> || [[public]]
|-
|style="width:3em;text-align:center"| <code>-</code> || [[private]]
|-
|style="width:3em;text-align:center"| <code>#</code> || [[protected]]
|-
|style="width:3em;text-align:center"| <code>~</code> || [[package]]
|}
 
==클래스 관계==
{{참고|클래스 관계}}
 
[[File:Uml_classes_en.svg]]
 
==단일 클래스 예시==
===예시 1: 비행===
[[파일:bell_fig1.jpg]]
 
===예시 2: 은행계좌===
{{클래스
{{클래스
|제목=BankAccount{{해석|은행계정}}
|제목=BankAccount{{해석|은행계좌}}
|데이터1=owner{{해석|소유주}} : String
|데이터1=-account_number {{해석|계좌번호}} : String
|데이터2=balance{{해석|잔고}} : Dollars = 0
|데이터2=-owner {{해석|예금주}} : String
|데이터3=
|데이터3=-balance {{해석|잔고}} : Float = 0
|데이터4=
|데이터4=
|데이터5=
|데이터5=
|데이터6=
|데이터6=
|메소드1=
|메소드1=
|메소드2=deposit{{해석|입금}} ( amount : Dollars )
|메소드2=+deposit() {{해석|입금하기}} ( amount : Float )
|메소드3=widthdrawl{{해석|출금}} ( amount : Dollars )
|메소드3=+withdrawal() {{해석|출금하기}} ( amount : Float )
|메소드4=
|메소드4=
|메소드5=
|메소드5=
33번째 줄: 58번째 줄:
}}
}}


==예시 2: 게시글==
https://www.ibm.com/developerworks/rational/library/content/RationalEdge/sep04/bell/bell_fig2.jpg
https://upload.wikimedia.org/wikipedia/commons/thumb/3/34/UML_class_diagram_example.svg/280px-UML_class_diagram_example.svg.png


* + [[public]]
===예시 3: 게시글===
* - [[private]]
아래와 같이 가시성([[접근 수정자]])을 기호로 함께 표시하는 경우도 많다.
* # [[protected]]
 
* ~ [[package]]
[[파일:UML_class_diagram_example.svg|280px]]
* / derived
 
* 밑줄 [[static]]
==멀티클래스 예시==
===예시 1: 온라인 쇼핑===
[[파일:class-example-online-shopping-domain.png]]
 
===예시 2: 온라인 음식점===
[[File:UML_Diagram_for_a_Online_Restaurant.png]]


==같이 보기==
==같이 보기==
*[[클래스]]
{{z컬럼3|
*[[UML]]
* [[상속]]
*[[상속]]
* [[클래스]]
*[[도메인 모델]]
* [[도메인 모델]]
*[[접근지정자]]
* [[접근 수정자]]
*[[유즈케이스 다이어그램]]
* [[객체 다이어그램]]
 
* [[통합 모델링 언어]](UML)
==주석==
* [[유스케이스 다이어그램]]
<references/>
}}


==참고 자료==
==참고==
*http://en.wikipedia.org/wiki/Class_diagram
*http://en.wikipedia.org/wiki/Class_diagram


[[분류: 프로그래밍]]
[[분류:UML 다이어그램]]
[[분류: UML]]

2022년 12월 17일 (토) 15:35 기준 최신판

1 개요[ | ]

class diagram
클래스 다이어그램, 클래스 그림, 클래스 도표
클래스명
속성1: 자료형
속성2: 자료형
메소드1(): 자료형
메소드2(): 자료형
메소드3(): 자료형

2 가시성[ | ]

+ public
- private
# protected
~ package

3 클래스 관계[ | ]

Uml classes en.svg

4 단일 클래스 예시[ | ]

4.1 예시 1: 비행[ | ]

Bell fig1.jpg

4.2 예시 2: 은행계좌[ | ]

BankAccount→ 은행계좌
-account_number → 계좌번호 : String
-owner → 예금주 : String
-balance → 잔고 : Float = 0
+deposit() → 입금하기 ( amount : Float )
+withdrawal() → 출금하기 ( amount : Float )

 

4.3 예시 3: 게시글[ | ]

아래와 같이 가시성(접근 수정자)을 기호로 함께 표시하는 경우도 많다.

UML class diagram example.svg

5 멀티클래스 예시[ | ]

5.1 예시 1: 온라인 쇼핑[ | ]

Class-example-online-shopping-domain.png

5.2 예시 2: 온라인 음식점[ | ]

UML Diagram for a Online Restaurant.png

6 같이 보기[ | ]

7 참고[ | ]

  1. 구체적으로 메소드 동작을 어떻게 구현해야 할지까지 알려주는 것은 아니지만, 시스템 전반적인 큰 그림을 보여준다...
문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}