Что такое конструктор классов?
Область применения:Visual Studio Visual Studio для Mac
Visual Studio Code ![]()
С помощью средства конструктора классов в Visual Studio можно создавать, визуализировать и рефакторинг схем классов в проектах C#, Visual Basic или C++. Схемы классов показывают элементы кода и их связи в области визуального конструктора, которые помогут лучше понять структуру проекта и реорганизовать код.
Конструктор классов пока недоступен в проектах .NET Core.
Сведения о схемах классов
Вот что можно сделать с схемами классов, более подробно:
- Разработка: редактируйте код своего проекта путем редактирования схемы классов. Добавляйте новые и удаляйте ненужные элементы. Внесенные изменения будут отражены в коде.
- Визуализация: лучше понимайте структуру своего проекта путем просмотра классов в проекте на схеме классов. Настраивайте схему таким образом, что было можно сосредоточиться на наиболее важных сведениях о проекте. Сохраняйте свою схему для использования ее в дальнейшем для демонстрации или в документации.
- Рефакторинг: переопределяйте методы, переименовывайте идентификаторы, выполняйте рефакторинг параметров, реализуйте интерфейсы и абстрактные классы.
Просмотр типов и отношений
В диаграмме классов отображаются сведения о типах, например о составляющих их элементах и отношениях между ними. Визуализация этих сущностей является динамическим представлением кода. Это означает, что можно изменять типы в конструкторе, а затем просматривать эти правки в исходном коде сущности. Аналогичным образом диаграмма классов синхронизируется с изменениями, вносимыми в файлы с кодом.
Если проект содержит диаграмму классов и в проекте есть ссылка на тип, который находится в другом проекте, диаграмма классов не отображает этот тип до сборки проекта для него. Аналогичным образом, диаграмма не отображает изменения кода внешней сущности, пока вы не перестроите проект с этой сущностью.
Процесс создания диаграммы классов
Диаграммы классов помогают понять структуру классов в проектах. Возможно, эти проекты были созданы другими разработчиками или необходимо просто обновить ваш собственный проект. Диаграммы классов можно использовать для настройки, совместного использования и предоставления сведений о проекте другим пользователям.
Первым шагом в предоставлении сведений о проекте является создание схемы классов, отображающей то, что вы хотите показать. Дополнительные сведения см. в разделе Добавление диаграммы классов. Можно создать несколько схем классов для проекта, которые можно использовать для отображения отдельного представления проекта, выбранного подмножества типов проекта или выбранного подмножества членов типов.
Помимо определения того, что отображается на каждой схеме классов, можно также изменить способ представления информации; Дополнительные сведения см. в разделе «Настройка схем классов».
После точной настройки одной или нескольких схем классов можно скопировать их в документы Microsoft Office и распечатать или экспортировать в виде графических файлов. Дополнительные сведения см. в разделе «Копирование элементов схемы классов» в документ Microsoft Office, схемы классов печати и схемы классов «Экспорт» в виде изображений.
Конструктор классов не отслеживает расположение исходных файлов, поэтому, изменение структуры проекта или перемещение исходных файлов в проекте может привести к тому, что конструктор классов не будет отслеживать тип, особенно исходный тип для typedef, базовые классы или типы ассоциаций. Может возникнуть ошибка вида Конструктору классов не удалось отобразить этот тип. В этом случае перетащите измененный или перемещенный исходный код в схему классов и повторно отобразите ее.
Добавление диаграмм классов в проекты
Для проектирования, изменения и рефакторинга классов и других типов добавьте в проект C# , Visual Basic или C++ диаграмму классов. Для визуализации различных частей кода в проекте добавьте в проект несколько диаграмм классов.
Диаграммы классов не могут быть созданы для проектов с общим кодом для нескольких приложений. Сведения о создании схем классов UML см. в разделе Создание проектов и схем моделирования UML.
Установка компонента «Конструктор классов»
Если у вас не установлен компонент Конструктор классов, выполните следующие действия, чтобы установить его.
- Откройте Visual Studio Installer из меню «Пуск» или выбрав в строке меню Visual Studio Инструменты>Получить инструменты и функции. Откроется Visual Studio Installer.
- Выберите вкладку Отдельные компоненты и затем прокрутите вниз до категории Средства для работы с кодом.
- Выберите Конструктор классов и нажмите Изменить.


Добавление пустой схемы классов в проект
- В обозревателе решений щелкните узел проекта правой кнопкой мыши и выберите пункт Добавить>Новый элемент. Либо нажмите клавиши CTRL+SHIFT+A. Откроется диалоговое окно Добавление нового элемента.
- Разверните узел «Общие«, а затем выберите схему классов из списка шаблонов. Для проектов Visual C++ шаблон Схема классов находится в категории Служебные программы.
Примечание. Если шаблон Схема классов отсутствует, выполните действия по установке компонента Конструктор классов в Visual Studio.
Чтобы добавить несколько схем классов, необходимо повторить шаги данной процедуры.
Добавление диаграммы классов на основе существующих типов
В обозревателе решений откройте контекстное меню файла класса, щелкнув правой кнопкой мыши, и выберите пункт Перейти к диаграмме классов.
В представлении классов откройте контекстное меню пространства имен или типа и выберите пункт Просмотр схемы класса.
Если представление классов не открыто, откройте его из меню Вид. Или нажмите клавиши CTRL+SHIFT+C.
Отображение содержимого всего проекта в схеме классов
В обозревателе решений или в представлении классов щелкните проект правой кнопкой мыши и выберите Просмотр, а затем — Просмотр схемы класса.
Будет создана автоматически заполняемая диаграмма классов.
Конструктор классов пока недоступен в проектах .NET Core.
Настройка диаграмм классов
Способ отображения информации схемой классов можно изменить. В рабочей области конструирования можно настроить всю схему или отдельные типы.
Например, можно изменить масштаб всей схемы классов, изменить порядок группировки и сортировки членов отдельного типа, скрыть или отобразить отношения, переместить отдельные типы или наборы типов в любое место на схеме.
Настройка способа отображения фигур на схеме не приводит к изменению кода типов, представленных на ней.
Разделы, содержащие члены типов, например раздел Properties класса, называются секциями. Отдельные секции и члены типов можно скрывать или отображать.
Увеличение или уменьшение масштаба отображения схемы классов
- Откройте и выберите файл диаграммы классов в конструкторе классов.
- Чтобы изменить уровень масштабирования области конструктора, нажмите кнопку Увеличить или Уменьшить на панели инструментов конструктора классов. or Укажите конкретное значение масштабирования. Для этого можно воспользоваться раскрывающимся списком Масштаб или ввести допустимый уровень масштабирования (в диапазоне от 10 % до 400 %).
Примечание. Изменение уровня масштабирования не оказывает влияния на масштаб печати схемы классов.
Настройка способа группировки и сортировки членов типа
- Откройте и выберите файл диаграммы классов в конструкторе классов.
- Щелкните правой кнопкой мыши пустую часть области конструктора и наведите указатель на пункт Участники группы.
- Выберите один из трех доступных вариантов.
- Группировка по типу разделяет отдельные члены типа в сгруппированный список свойств, методов, событий и полей. Отдельные группы зависят от определения сущностей. Например, класс не отобразит никакую группу событий, если для этого класса не определены события.
- Группировка по доступу разделяет отдельные члены типа в сгруппированный список модификаторов доступа членов. Например, общие и частные.
- Сортировать по алфавиту отображает элементы, из которых состоит сущность, в виде единого упорядоченного в алфавитном порядке списка. Список сортируется в порядке возрастания.
Скрытие секций в типе
- Откройте и выберите файл диаграммы классов в конструкторе классов.
- Щелкните правой кнопкой мыши категорию членов в типе, которую требуется настроить (например, выберите узел Методы в классе).
- Щелкните Скрыть ячейку. Выбранная секция исчезнет из контейнера типа.
Скрытие отдельных членов в типе
- Откройте и выберите файл диаграммы классов в конструкторе классов.
- Правой кнопкой мыши щелкните член в типе, который требуется скрыть.
- Щелкните Скрыть. Выбранный член исчезнет из контейнера типа.
Отображение скрытых секций и членов в типе
- Откройте и выберите файл диаграммы классов в конструкторе классов.
- Правой кнопкой мыши щелкните имя типа, содержащего скрытую секцию.
- Щелкните Показать все члены. Все скрытые секции и члены появятся в контейнере типа.
Скрытие отношений
- Откройте и выберите файл диаграммы классов в конструкторе классов.
- Правой кнопкой мыши щелкните линию связи или наследования, которую требуется скрыть.
- Выберите Скрыть для линий связи или Скрыть линию наследования для линий наследования.
- Щелкните Показать все члены. Все скрытые секции и члены появятся в контейнере типа.
Отображение скрытых отношений
- Откройте и выберите файл диаграммы классов в конструкторе классов.
- Правой кнопкой мыши щелкните имя типа, содержащего скрытые линии связи или наследования. Щелкните Показать все члены для линий связи либо Показать базовый класс или Показать производные классы для линий наследования.
Удаление фигуры со схемы классов
Фигуру типа можно удалить из схемы классов, не затронув соответствующий код типа. Удаление фигур типов из схемы классов влияет только на данную схему. Базовый код, определяющий тип и другие схемы, отображающие тип, не затрагиваются.
- На схеме классов выберите фигуру типа, которую необходимо удалить из схемы.
- В меню Правка выберите команду Удалить из схемы. Фигура типа и все линии связи или наследования, соединенные с фигурой, больше не будут отображаться на схеме.
Удаление фигуры типа и ее кода
- Щелкните правой кнопкой мыши на рабочей области конструирования.
- В контекстном меню выберите команду Удалить код. Фигура удаляется из схемы, а ее базовый код удаляется из проекта.
Копирование элементов диаграммы классов в документ Microsoft Office
Можно копировать фигуры из схемы классов .NET (файл .cd) в другие документы. В зависимости от типа документа, в который выполняется вставка, при вставке будет получена либо копия фигуры, либо ее базовый код. Сведения о копировании фигур из схем классов UML в проекте моделирования см. в статье Экспорт схем в виде изображений.
Копирование одного элемента
Щелкните фигуру правой кнопкой мыши и выберите пункт Копировать изображение.
Копирование нескольких элементов
- Выберите на схеме фигуры, которые требуется скопировать.
- Щелкните выбранные фигуры правой кнопкой мыши и выберите пункт Копировать изображение.
Копирование всех элементов в схеме классов
- Щелкните правой кнопкой мыши область схемы и выберите команду «Выбрать все» или нажмите клавиши CTRL +A.
- В меню Правка выберите Копировать изображение.
Можно также выбрать команду Копировать вместо Копировать изображение. Команда Копировать копирует изображение как обычный точечный рисунок. Команда Копировать изображение копирует изображение как векторное изображение, что лучше подходит для большинства приложений Office.
Экспорт диаграмм классов в виде изображений
Чтобы экспортировать схему классов, созданную на основе кода в проекте, сохраните ее как изображение. Если вместо этого нужно экспортировать схемы класса UML, см. статью Экспорт схем в виде изображений.
Экспорт схем
- Откройте файл со схемой классов (.cd).
- В меню Схема классов или в контекстном меню области схемы выберите пункт Экспортировать схему как рисунок.
- Выберите схему.
- Выберите нужный формат.
- Выберите Экспорт, чтобы завершить экспорт.
Чтобы автоматически обновить экспортированные изображения, на которые есть ссылки в других документах, еще раз экспортируйте схему в Visual Studio.
Печать схем классов
Схему классов можно распечатать с помощью функции печати Visual Studio.
Печать схемы классов
- Откройте схему классов.
- В меню Файл выберите команду Печать.
Будет распечатана вся схема классов. При необходимости печати на бумаге соответствующего размера может потребоваться корректировка настроек в диалоговом окне Параметры страницы.
Добавление комментариев в диаграммы классов
Для добавления примечаний к схемам классов можно использовать фигуры комментария. У фигуры комментария есть свойство Текст, в которое можно вводить текст. Фигуры комментария существуют только в области схемы, а не в коде.
Комментарий находится в представлении диаграммы классов в конструкторе классов. При открытии в одном проекте второй диаграммы классов комментарии, созданные в первом представлении, не отображаются. При удалении схемы классов все содержащиеся в ней комментарии также удаляются.
Размеры фигуры комментария можно изменить, однако нельзя изменить другие характеристики представления комментария, такие как фон, цвет, шрифт или размер шрифта.
Добавление комментария
- Перетащите комментарий из панели инструментов конструктора классов на схему классов.
- Щелкните новую фигуру комментария на схеме и введите нужный текст.
Использование сочетаний клавиш и мыши в окне «Схема классов» и «Сведения о классах»
Вы можете использовать клавиатуру в дополнение к мыши для навигации в конструкторе классов и окне Сведения о классах.
Использование мыши в конструкторе классов
В схемах классов поддерживаются следующие действия мыши.
| Комбинации мыши | Контекст | Description |
|---|---|---|
| Дважды щелкните | Shape — элементы | Открывает редактор исходного кода. |
| Дважды щелкните | Соединитель без описания операций | Интерфейс развертывания и свертывания без описания операций. |
| Дважды щелкните | Метка соединителя без описания операций | Вызывает команду Показать интерфейс |
| Колесико мыши | Диаграмма классов | Вертикальная прокрутка. |
| SHIFT + колесико мыши | Диаграмма классов | Горизонтальная прокрутка. |
| CTRL + колесико мыши | Диаграмма классов | Изменение масштаба. |
| CTRL+SHIFT + щелчок | Диаграмма классов | Изменение масштаба. |
Использование мыши в окне «Сведения о классах»
С помощью мыши можно изменить внешний вид окна Сведения о классах и данные, которые в нем отображаются, следующими способами:
- Если щелкнуть любую изменяемую ячейку, можно изменить ее содержимое. Изменения будут отражены во всех местах, где данные хранятся или отображаются, в том числе в окне Свойства и в исходном коде.
- Если щелкнуть любую ячейку строки, в окне Свойства появятся свойства элемента, представленного этой строкой.
- Чтобы изменить ширину столбца, перетащите границу справа от заголовка столбца до требуемой ширины столбца.
- Можно развернуть или свернуть узлы секции или свойств, щелкнув символы со стрелками слева от строки.
- В окне Сведения о классе есть несколько кнопок для создания членов в текущем классе и для перехода между секциями членов в таблице окна Сведения о классе.
Использование клавиатуры в конструкторе классов
В схемах классов поддерживаются следующие действия клавиатуры.
| Ключ. | Контекст | Description |
|---|---|---|
| Клавиши со стрелками | Внутри фигур типа | Древовидная навигация по содержимому фигуры (поддерживается обтекание фигуры). Клавиши влево и вправо развертывают и свертывают текущий элемент, если это возможно, перемещают пользователя к родительскому элементу, если нет (подробные сведения см. в описании дерева навигации). |
| Клавиши со стрелками | Фигуры верхнего уровня | Перемещение фигур на схеме. |
| SHIFT+клавиши со стрелками | Внутри фигур типа | Формирование непрерывного выделения, состоящего из элементов фигур, например членов, вложенных типов или секций. Следующие сочетания клавиш не поддерживают обтекание. |
| Домашняя страница | Внутри фигур типа | Переход к заголовку фигуры верхнего уровня. |
| Домашняя страница | Фигуры верхнего уровня | Переход к первой фигуре на схеме. |
| Окончание | Внутри фигур типа | Переход к последнему отображаемому элементу внутри фигуры. |
| Окончание | Фигуры верхнего уровня | Переход к последней фигуре на схеме. |
| SHIFT+HOME | Внутри фигуры типа | Выбор элементов в фигуре, начиная с текущего и заканчивая верхним элементом той же фигуры. |
| SHIFT+END | Внутри фигуры типа | То же, что и SHIFT+HOME, но в направлении сверху вниз. |
| Введите | Все контексты | Вызывает действие по умолчанию для фигуры, которое также доступно при двойном щелчке мыши. В большинстве случаев это представление кода, но некоторые элементы определяют его по-разному (интерфейсы без описания операций, заголовки секции, метки без описания операций). |
| + и —. | Все контексты | Если элемент в фокусе можно развернуть, эти клавиши развертывают или сворачивают элемент. |
| > | Все контексты | Для элементов с дочерними элементами развертывает элемент, если он свернут, и переходит к первому дочернему элементу. |
| Все контексты | Переход к родительскому элементу. | |
| ALT+SHIFT+L | Внутри фигур типа и на фигурах типа. | Переход к интерфейсу без описания операций текущей выбранной фигуры, если он существует. |
| ALT+SHIFT+В | Внутри фигур типа и на фигурах типа. | Если список базовых типов отображается на фигуре типа и содержит более одного элемента, это сочетание переключает состояние развертывания списка (развернут или свернут). |
| Удаление | На фигурах типа и комментария | Вызывает команду Удалить из схемы |
| Удаление | В любом другом месте. | Вызывает команду Удалить из кода (члены, параметры, сопоставления, наследование, метки без описания операций) |
| Ctrl+Delete | Все контексты | Вызывает команду Удалить из кода для выделенного элемента |
| Вкладка | Все контексты | Переход к следующему дочернему элементу того же родительского элемента (поддерживает обтекание). |
| Shift+Tab | Все контексты | Переход к предыдущему дочернему элементу того же родительского элемента (поддерживает обтекание). |
| ПРОБЕЛ | Все контексты | Переключает выбор в текущем элементе. |
Использование клавиатуры в окне «Сведения о классах»
Следующие ключевые привязки имитируют интерфейс ввода кода.
Используйте следующие клавиши для перемещения в окне Сведения о классах.
Если курсор находится в поле «Сводка», ввод пробела добавляет символ пробела.
Как сделать диаграмму классов в visual studio 2019
To design, edit, and refactor classes and other types, add a class diagram to your C#, Visual Basic, or C++ project. To visualize different parts of the code in a project, add multiple class diagrams to the project.
You can’t create class diagrams from projects that share code across multiple apps. To create UML class diagrams, see Create UML modeling projects and diagrams.
Install the Class Designer component
If you haven’t installed the Class Designer component, follow these steps to install it.
Open Visual Studio Installer from the Windows Start menu, or by selecting Tools > Get Tools and Features from the menu bar in Visual Studio.
Visual Studio Installer opens.
Select the Individual components tab, and then scroll down to the Code tools category.
Select Class Designer and then select Modify.
. moniker range=»vs-2019″ . image type=»content» source=»media/vs-2019/class-designer-component.png» alt-text=»Screenshot of the Class Designer component in the Visual Studio Installer.» lightbox=»media/vs-2019/class-designer-component.png». . moniker-end . moniker range=»vs-2022″ . image type=»content» source=»media/vs-2022/class-designer-component.png» alt-text=»Screenshot of the Class Designer component in the Visual Studio Installer.» lightbox=»media/vs-2022/class-designer-component.png». . moniker-end
The Class Designer component starts installing.
Add a blank class diagram to a project
In Solution Explorer, right-click the project node and then choose Add > New Item. Or, press Ctrl+Shift+A.
The Add New Item dialog opens.
Expand Common Items > General, and then select Class Diagram from the template list. For Visual C++ projects, look in the Utility category to find the Class Diagram template.
[!NOTE] If you don’t see the Class Diagram template, follow the steps to install the Class Designer component for Visual Studio.
The class diagram opens in Class Designer and appears as a file that has a .cd extension in Solution Explorer. You can drag shapes and lines to the diagram from Toolbox.
To add multiple class diagrams, repeat the steps in this procedure.
Add a class diagram based on existing types
In Solution Explorer, open a class file’s context menu (right-click) and then choose View Class Diagram.
In Class View, open the namespace or type context menu and then choose View Class Diagram.
[!TIP] If Class View is not open, open Class View from the View menu.
To display the contents of a complete project in a class diagram
In Solution Explorer or Class View, right-click the project and choose View, then choose View Class Diagram.
An auto-populated class diagram is created.
[!IMPORTANT] Class Designer is not available in .NET Core projects.
Как в Visual studio 2019 установить поддержку UML диаграмм?
Visual Studio 2019 Professional 16.6.3
В шаблонах проектов не могу найти Modeling Projects (средство построения диаграмм).
Что надо установить или изменить, чтобы получить данное средство?
Надо вот это

- Вопрос задан более года назад
- 3072 просмотра
- Вконтакте




Johnny Gat, Скриншот с версии Ultimate 2012 Update 2.
В Visual Studio 2019 нет указанных на скриншоте элементов, но есть возможность создавать ClassDiagramm.cd которые очень похожи.



Johnny Gat,
В видеоуроке используют VS 2012 и говорят — изучаем uml диаграммы. Создают Modeling Project -> UML Class diagramm. Картинки я привел.
В VS 2019 этого нет.
Но в VS 2019 я нашел диаграмму классов. По функционалу она очень похожа на uml диаграмму VS 2019.
Это одно и тоже?
Просто для дальнейшего изучения мне нужен этот инструмент. А менять VS 2019 на VS 2012 наверно плохая идея. Продукт скорее всего устарел или будут проблемы с другими расширениями.
Как сделать диаграмму классов в visual studio 2019
class Student : Person
override public void ShowInfo()
>
class Developer : Person
override public void ShowInfo()
>
Как создать диаграмму классов в VS2019?
Я не понимаю как сделать диаграмму классов у меня просто нет такой возможности добавить ее как это сделать?
Отслеживать
задан 26 ноя 2022 в 9:11
user530727 user530727
А у тебя установлен модуль для этого?
26 ноя 2022 в 9:13
А какой нужен модуль?
– user530727
26 ноя 2022 в 9:15
«Конструктор классов» в Visual Studio Installer посмотри
26 ноя 2022 в 9:19
Не нужен никакой модуль, в контекстном меню для интересующего файла есть пункт View class diagram.
26 ноя 2022 в 10:26
0
Сортировка: Сброс на вариант по умолчанию
Знаете кого-то, кто может ответить? Поделитесь ссылкой на этот вопрос по почте, через Твиттер или Facebook.
-
Важное на Мете
Похожие
Подписаться на ленту
Лента вопроса
Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.
Дизайн сайта / логотип © 2023 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2023.11.15.1019
Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.
Как подключить Диаграммы классов в Visual Studio 2017-2019?
Относительно не давно обновил студию, и к моему удивлению я не обнаружил в ней Диаграмм классов. Оказалось что их надо было выбирать при установки студии. Но обо всем по порядку. Диаграмма классов очень похожа на язык UML, но не путайте, это язык DSL— domain specific language это определенный архитектурный слой который описывает бизнес сущности и модель. Применяют его в программировании в основном для визуального представления всех классов и методов проекта и их внутренний логику взаимодействия. Хотя UML был предназначен для конструирования приложения, часть возможностей перетекла и в DSL. Тут таким же образом можно наглядно используя конструктор, создавать, классы, поля и методы, проводить между ними ассоциативные связи итд. Однако мы отошли от нашей проблемы, а именно того как установить класс диаграмм в visual studio 2019.

Для этого зайдем в студию и выберем в пункте Средства>Получить средства и компоненты… как показано на рисунке выше. Запустится Visual Studio Installer в котором необходимо установить галочку в пункте Разработка расширений Visual Studio, а в окне Сводка установить галочку Конструктор компонентов. И нажать кнопку Изменить, не забудьте перед этим закрыть саму студию. Недостающие компоненты будут загружены и когда вы запустите студию сможете воспользоваться классом диаграмм.

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

В последних версия VS переименовали компонент, потому многие его не могу найти, для этого я дополню статью.

заходим в Средства >>Получить средства и компоненты …
Откроется окно Visual Studio Installer

Далее вам не обходимо перейти на вкладку Отдельный компоненты.

И в поле поиска вписать слово конструктор.
От фильтруется список и вы увидите компонент Конструктор классов нужно установить галочку на компоненте. И нажать в правом углу кнопку изменить.

Произойдет загрузка компонента и у вас вновь откроется студия по завершению.

Далее вам необходимо выбрать правой кнопкой мыши по проекту и перейти в пункт Представление >>Перейти к диаграмме классов. У вас загрузится конструктор как на скриншоте.
Для тех кто так и не понял как это сделать, снял видео.
