Инструменты для быстрого создания эскизов для рисования структур C/C++, указателей и т. д.

Я хотел бы знать, что вы используете для наброска отношений между различными объектами в C/C++. Это может быть очень широкий вопрос, поэтому я попытаюсь немного уточнить свой вопрос и привести пример.

Я ищу что-то достаточно простое, как пользователь, и позвольте мне легко набросать контейнеры, указатели и т. д. в неформальной манере. Цель состоит в том, чтобы задокументировать некоторые отношения структур, чтобы передать их младшим разработчикам. Взгляд на рисунки должен ускорить понимание кода.

Мои решения на данный момент должны использовать:

1) Бумага и карандаш. 2) Автофигуры Microsoft PowerPoint/Word. 3) Бесплатная версия Dia.

Другими могут быть:

4) Microsoft Visio, но у моей компании нет лицензий. 5) UML-инструменты. Я не хочу идти этим путем. Это то, что я имею в виду более формальное решение. Я знаю, что такие инструменты, как Rational Rose, являются xxx, и я пробовал boUML и violet, и в некоторых частях они хороши, но я предпочитаю гибкость вариантов 1), 2) или 3).

Наконец, позвольте мне написать более конкретный пример:

Скажем, мне нужно набросать карту, которая содержит другую карту в качестве отображаемого значения, и эта содержит структуру в качестве отображаемого значения, которая содержит вектор указателей типа и указатель на другой тип. Кроме того, существуют другие структуры, которые содержат указатели на объекты, на которые указывает предыдущая карта, поэтому объекты указывают из разных мест.

Это только один пример, который у меня есть, но вы можете легко привести его из своего опыта.

Что бы вы использовали для наброска этого примера или другого похожего, с которым вы имели дело?

С уважением, Томас.


person nephewtom    schedule 03.05.2010    source источник
comment
По моему не очень скромному мнению, Rational Rose — ужасная программа, и я не думаю, что стал бы использовать ее снова, даже если бы от этого зависела моя карьера.   -  person James McNellis    schedule 03.05.2010
comment
Ну, я пользовался им давно и помню, что он был довольно глючным. Я полагаю, что сейчас он улучшится. Я думаю, это своего рода отраслевой стандарт, но я им не пользуюсь. Я попробовал обратное проектирование C++ с помощью boUML и смог получить неплохие изображения дизайна различных проектов.   -  person nephewtom    schedule 04.05.2010


Ответы (11)


Visio отлично подходит для быстрого создания таких типов иллюстраций/схем. Я рекомендую хотя бы попытаться заставить вашу компанию приобрести лицензию.

Если Visio действительно вам не подходит, следующим шагом может быть рассмотрение альтернатив Visio с открытым исходным кодом. .

person Justin Ethier    schedule 03.05.2010

У меня есть две вещи, которыми я пользуюсь.

  1. Моя доска. Белые доски действительно трудно превзойти для быстрого построения диаграмм.
  2. UMLPad. Он небольшой, поэтому в нем нет множества посторонних функций, он предназначен для диаграмм UML и находится под лицензией GPL.
person T.E.D.    schedule 03.05.2010

Для вопросов дизайна, затрагивающих мысли большого количества людей, мы использовали «Post-It Design». Идея проста:

  • Выберите доску
  • Представление объекта в виде стикера Post-It (имя + некоторые комментарии)
  • Нарисуйте отношения на доске, перемещая стикеры по мере необходимости.

И когда ты закончишь? Фотография всего этого для вечности отправлена ​​по электронной почте причастным лицам :)

Это может показаться кустарным, но это действительно напоминает мне подход бумажного дизайна к GUI.

person Matthieu M.    schedule 03.05.2010
comment
@Matthieu: Это действительно хорошо для мозгового штурма - настоятельно рекомендуется. - person Johann Gerell; 03.05.2010

Пробовали ли вы рисование Документа Google? Ссылка - одна из диаграмм, которые я сделал с ней.

person Xavier Ho    schedule 05.05.2010

Мне нравится yuml как очень простой способ создания диаграмм, которые также сохраняют неформальный вид. И никакого реального рисунка не нужно :)

person nathanvda    schedule 11.05.2010

Я бы использовал graphviz, но поскольку вы говорите «что-то достаточно простое для пользователя», dia, вероятно, будет лучшей альтернативой.

person Rasmus Kaj    schedule 03.05.2010

Я использовал ArgoUML, но вам придется решить, достаточно ли он прост для ваших целей.

person Kelly S. French    schedule 03.05.2010

Для полноты картины: есть также StarUML, который является бесплатным (для Windows) и позволяет создавать uml-диаграммы. довольно быстро.

person stefaanv    schedule 03.05.2010

  • Visual Paradigm UML версия для сообщества бесплатна и достаточно хороша для набросков.
  • Open Office Draw работает для большинства ваших задач.
person Harald Scheirich    schedule 11.05.2010

Вы указываете, что вы не просто используете U.M.L. Большинство инструментов в наши дни ориентированы на конкретный U.M.L., вы можете поискать общий инструмент рисования.

В некоторых проектах я иногда использую Open Office Draw, потому что компания не разрешает мне использовать другое программное обеспечение (компания не хочет платить), это похоже на Power Point или сокращенную, упрощенную версию Корел Дроу:

http://www.openoffice.org/

В других случаях я пробовал как коммерческие, так и приложения с открытым исходным кодом, но мне это не нравилось.

Дома я использую (платный софт):

http://www.novagraph.com/

вместе с Open Office Draw.

Эти тоже хороши (платное ПО):

http://www.smartdraw.com

Удачи.

person umlcat    schedule 01.07.2011

Если у вас есть кодовая база, которую вы хотите, чтобы разработчик понял (похоже, вы пытаетесь помочь младшим разработчикам быстрее освоиться), почему бы не запустить ваш код через doxygen

С различными типами вывода и возможностью рисовать иерархию классов это действительно полезный инструмент. Дополнительным преимуществом чего-то вроде вывода в формате html является то, что вам не нужно втискивать все в ограниченное пространство, поскольку все отношения связаны гиперссылками. Пользователи могут просто просматривать исходный код на уровне типа, не беспокоясь о деталях.

person ezpz    schedule 11.05.2010