Вопрос

У меня есть требование генерировать UML-диаграммы для одного из моих заданий C ++. Я использую Visio 2007, и у меня возникают проблемы с представлением векторов C ++. Единственный способ увидеть эту работу - создать собственный тип данных C ++ или создать векторный класс в моем проекте, а затем для каждого экземпляра вектора в UML мне нужно покопаться в свойствах и добавить < Class > в поле суффикса.

Обычно я пытаюсь получить vector < Object > , не копаясь в свойствах и не добавляя < Class > в поле суффикса каждый раз.

Я в значительной степени застрял с программным обеспечением Microsoft для создания диаграмм и кодирования, поэтому, пожалуйста, не предлагайте мне использовать другое программное обеспечение. Однако, если Visual Studio 2003 поддерживает создание диаграмм UML менее болезненным способом, чем Visio, я бы не стал возражать против использования Visual Studio, но, пожалуйста, скажите мне, где эта опция.

Это было полезно?

Решение

Вам не нужно указывать, что это вектор на диаграмме UML.

В приведенном вами примере между одним классом и другим существует отношение один ко многим. Это важная информация, с которой вам нужно общаться.

Вы решили реализовать это как вектор: это детали реализации, которые не нужно указывать на диаграмме - просто отобразите связь «один ко многим».

Если по какой-либо причине вам нужно изменить это на std :: list или std :: deque, или любой другой контейнер stl, вам не нужно будет обновлять диаграмму, потому что многие концепции остаются прежними.

Помните, что вы отображаете абстракцию кода. Если вы хотите передать, как все классы концептуально связаны друг с другом, диаграмма классов UML является идеальной. Если кто-то хочет узнать подробности того, как он реализован, он или она всегда могут использовать диаграмму в качестве отправной точки, прежде чем смотреть на сам исходный код.

Чтобы увидеть пример отношений один-ко-многим, отображаемых с использованием UML, нажмите здесь .

Другие советы

UML имеет обозначение для параметризованных классов. Тип параметра помещается в перекрывающееся поле в верхнем правом углу, например это Поддерживают ли ваши инструменты другое дело ...

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top