2015-01-25 10 views
9

UML 클래스 다이어그램에서 클래스에 5 개의 개인 속성이 있으며 변경할 수 있어야하고 읽을 수 있어야하는 경우 UML은 아무 것도 지정하지 않아도 10 개의 get/set 메서드로 매우 추악 해집니다. 클래스의 : 더 재미있는 기능 '재미있는 기능UML 클래스 다이어그램에서 getter 및 setter를 나타 내기위한 단축키

Bloated

추함은 제쳐 놓고, 나는 수업에 집중해야 UML 같은 느낌'. 나 맞아?

개인 속성에 대한 getter 및 setter를 나타 내기위한 몇 가지 표준적인 단축키가 있습니까?

+1

흥미롭지 않은 기능을 모델링하고 싶지 않으면 getters/setters를 모두 제거하고 속성을 단순 속성으로 모델링 할 수 있습니다. 상위 속성 구획 만 채우고 작업 구획은 비워 둡니다. 일부 언어 (예 :'C#','Delphi')에서는 getter/setter가 프로그래머에게 거의 보이지 않습니다. 저는 _UML_ ("_Object Management Group (OMG)은 비영리 기술 표준 컨소시엄입니다 ._")에 어떠한 책임도 전가해서는 안되며 키보드 측면에서 책임감에 중점을 둡니다. 나 맞아? – xmojmr

답변

9

당신이 맞습니다 : 클래스 모델에 표준 setter 및 getter의 "상용어"서명을 포함시킬 필요가 없습니다. 불행하게도, UML은 getter와 setter를 private 속성으로 사용하기위한 표준 표기법을 정의하지 않습니다. 그래서, 당신은 당신 자신의 컨벤션을 사용해야 할 것입니다. 예를 들어, UML 설명으로 오른쪽 상단 모서리가 구부러진 사각형으로 표시되는 일반 설명 (모든 개인 속성에 getter 및 setter가 있고 전용 읽기 전용 속성에는 getter가있는 반면)을 포함 할 수 있습니다. "노트 기호")를 클릭하십시오.

getter/setter 규칙을 해당 속성에 대해보다 명확하게하려면 우선 그림과 같이 이러한 개인 속성을 분류하는 데 사용할 고유 한 고정 관념 (예 : "get/set"및 "get")을 만듭니다. 다음 그림 :

Class with get/set attribute stereotypes

I는 ECMAScript를 6 종류의 암시 게터와 세터 문서화/기술이 사용하고 있습니다.

+0

멋진 아이디어, uml 3.0 (?)의 일부 여야합니다. :) –

2

UML은 게터 설정 작업을 정의하지 않습니다. Get 및 Set 메소드는 속성 정의를 실현하기 위해 프로그래밍 언어에서 사용됩니다. 예를 들어 readonly 속성은 구현 코드에서만 getter 메소드를 갖습니다. 속성이 계산 된 것으로 정의되면 일반적으로 getter 메소드가 코드를 구현하는 데 사용되며 계산 된 속성은 일반적으로 읽기 전용이기 때문에 setter는 제외 될 수 있습니다. 속성의 가시성은 일반적으로 코드의 getter 및 setter 메소드에 대한 가시성으로 이동합니다. 읽기 쓰기 및 계산되지 않음으로 정의 된 속성의 코드에서 getter 및 setter 메서드를 정의하는 것은 의미가 없습니다.