2008-10-26 7 views
3

내 C++ 할당 중 하나에 대한 UML 다이어그램 생성 요구 사항이 있습니다. Visio 2007을 사용하고 C++ 벡터를 나타내는 데 문제가 있습니다. 이 작업을 볼 수있는 유일한 방법은 사용자 정의 C++ 데이터 유형을 작성하거나 프로젝트에서 벡터 클래스를 작성한 다음 UML에서 벡터의 각 인스턴스에 대해 특성을 파고 접미사 필드에 <Class>을 추가해야합니다.Visio 및 UML - 벡터 게재

기본적으로 vector<Object>은 속성을 파고 추가 할 때마다 접미어 필드에 <Class>을 추가하려고합니다.

나는 다이어그램과 코딩을 만들기 위해 마이크로 소프트 소프트웨어에 상당히 집착하고있다. 따라서 나는 다른 소프트웨어를 사용하지 말 것을 제안하지 않는다. 그러나 Visual Studio 2003이 Visio보다 덜 고통스러운 방식으로 UML 다이어그램을 만드는 것을 지원한다면 Visual Studio를 사용하는 것에 반대 할 것이지만 그 옵션이 어디에 있는지 말해주십시오.

+0

죄송합니다.이 주제에 대한 첫 번째 질문을 읽었습니다. 나는 거의 같은 것을 읽는다는 것을 압니다. – epochwolf

답변

7

UML 다이어그램의 벡터라고 명시 할 필요는 없습니다.

예를 들어, 한 클래스와 다른 클래스 사이에 일대 다 관계가 있습니다. 그것이 의사 소통하는 데 필요한 중요한 정보입니다.

벡터로 구현하기로 선택했습니다. 이는 다이어그램 상에 구현할 필요가없는 구현 세부 사항입니다. 일대 다 연관 만 표시하면됩니다.

어떤 이유로이 값을 std :: list 또는 std :: deque 또는 다른 stl 컨테이너로 변경해야하는 경우 다이어그램을 업데이트 할 필요가 없습니다. 일대 다 - 많은 개념은 여전히 ​​동일합니다.

코드을 으로 추상화 한 것을 기억하십시오. 모든 클래스가 개념적으로 서로 어떻게 관련되어 있는지 알려면 UML 클래스 다이어그램이 이상적입니다. 누군가 구현 방법에 대한 세부 사항을 알고 싶다면 소스 코드 자체를보기 전에 항상 다이어그램을 시작점으로 사용할 수 있습니다. 일대 다 관계의 예를 들어

here

+0

uml에서 일대 다 관계를 어떻게 표시합니까? 그 주제가 내 수업에서 다뤄지지 않았습니다. 그리고 UML은 내 수업에서 코드의 추상화로 사용되지 않습니다. 모든 메소드와 인스턴스 변수가 표시됩니다. 기본적으로 문서가없는 헤더 파일입니다. – epochwolf

+0

응답에 예제에 대한 링크를 추가했습니다. –

+0

기본적으로 UML의 컬렉션은 집합입니다. 컬렉션이 정렬되고 중복 요소를 허용한다는 것을 나타 내기 위해'{sequence}'속성 문자열을 추가해야합니다. 컬렉션이 정렬 된 것을 나타 내기 위해'{ordered} '를 사용할 수도 있고, 중복 된 요소를 허용한다면'{bag}'을 사용할 수도 있습니다. –

1

UML 매개 변수가있는 클래스에 대한 표기법이 있습니다를 클릭 UML 사용하여 표시. 매개 변수 유형이 오른쪽 상단 모서리의 겹쳐진 상자로 들어가는 것처럼 this 도구가 지원하는지 여부는 다른 문제입니다 ...