Конструктор классов в Visual Studio - стоит ли это того?

Кто-нибудь часто использует Class Designer в Visual Studio?

Я скачал Modeling Power Toys для 2005 года и был впечатлен тем, что видел до сих пор. Блог дизайнера классов MSDN, похоже, некоторое время не обновлялся, но все равно выглядит весьма полезным.

Является ли Class Designer быстрым способом создания базового приложения или мне просто нужно потренироваться на бумаге, а затем начать писать код?

Спасибо

18.08.2008 09:51:36
8 ОТВЕТОВ
РЕШЕНИЕ

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

Как инструмент генерации кода, это ужасная идея.

Идея, что мы сначала спроектируем всю нашу структуру кода, а затем заполним пробелы маленькими кусочками реализации, в корне не работает.

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

Если вы заранее решите использовать определенную структуру классов до того, как попытаетесь решить проблему, есть 100% вероятность, что вы выберете неправильный дизайн и выстрелите себе в ногу.

18
14.05.2016 19:44:04
Я думаю, что этот ответ очень субъективен. Class Diagram - очень важный инструмент проектирования. Если вы хотите разработать сложное приложение (которое должно быть усовершенствовано), то хорошо продуманная диаграмма классов неизбежна.
Abhijeet Nagre 20.01.2016 12:59:49
Диаграммы классов могут быть очень полезны при первоначальном проектировании, но я хотел подчеркнуть, что низкоуровневая структура почти всегда будет меняться, когда вы начинаете кодировать, и поэтому «генерация» вашего кода из визуального конструктора бесполезна
Orion Edwards 22.01.2016 03:25:45
@ Орион - обоснованность вашего мнения о UML как о инструменте генерации кода зависит от персонала, технологий и проекта. Я работал с инженером-программистом, который занимался созданием прямого кода для нескольких проектов (в окончательной сборке не было кода, который не был сгенерирован заранее). Это разрезало их цикл разработки пополам, сказал он. Вы просто должны думать в UML, а не в коде. Хотя я сомневаюсь, что конструктор VS будет хорошим инструментом для этого.
Ian 9.05.2016 17:44:51

Краткий ответ: Нет.

Более длинный ответ: нет, совсем нет. Есть причина, по которой он не был обновлен.

[EDIT] @ MrBrutal - Извините - вы хотите создать код или просто представить дизайн? Потому что я принял твой вопрос, чтобы сгенерировать для тебя код.

6
18.08.2008 10:12:07

Я пробовал это пару раз, в основном для просмотра существующих классов. Если бы это показывало все отношения, это было бы более полезно. Теперь это только показывает наследование.

0
18.08.2008 10:01:36

Я нахожу это полезным иногда, чаще для документации впоследствии.

Это новая небольшая утилита, но я не думаю, что вы получаете полную функциональность в VS Pro - я думаю, что вам нужно Architect's Edition.

0
18.08.2008 10:02:04

Я использовал его пару раз, чтобы получить прилично выглядящие диаграммы классов для размещения презентаций / постов в блогах и т. Д. Но вот об этом ...

Есть какие-то предложения по другим простым инструментам UML / диаграмм классов, которые просты в использовании и создают приятные на вид диаграммы? Должен быть в состоянии генерировать диаграммы из кода .NET.

1
18.08.2008 10:23:56

Комментарии здесь предполагают, что мало кто найдет дизайнера классов полезным.

Забавно отметить, что Microsoft разработала конструктор классов как полезную замену бесполезному UML (UML-диаграммы ненадежны после потери синхронизации с исходным кодом).

Проблема с диаграммами классов в том, что они говорят нам то, что мы уже знаем.

0
18.08.2008 23:38:12

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

0
19.08.2008 00:07:48

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

Также немного легче добавлять классы / интерфейсы, чем в обозревателе решений, хотя новые файлы всегда оказываются в корневой папке, а не в той же папке, что и компакт-диск.

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

2
25.05.2012 06:29:19