¿Qué es el Diseñador de clases?
Con la herramienta diseñador de clases de en Visual Studio, puede diseñar, visualizar y refactorizar diagramas de clases en proyectos de C#, Visual Basic o C++. Los diagramas de clases muestran los elementos de código y sus relaciones en una superficie de diseño visual, lo que puede ayudarle a comprender mejor la estructura del proyecto y reorganizar el código.
Nota
El Diseñador de clases no está disponible en proyectos de .NET Core y .NET 5 y versiones posteriores.
Acerca de los diagramas de clases
Esto es lo que puede hacer con diagramas de clases, con más detalle:
Diseño: Modifique el código de su proyecto editando el diagrama de clases. Agregue nuevos elementos y elimine los no deseados. Los cambios se reflejan en el código.
Visualizar: comprenda la estructura del proyecto mediante la visualización de las clases del proyecto en un diagrama. Personalice el diagrama para que pueda centrarse en los detalles del proyecto que más le interesan. Guarde el diagrama para usarlo más adelante para la demostración o la documentación.
Refactorizar: invalide métodos, cambie el nombre de identificadores, refactorice parámetros e implemente interfaces y clases abstractas.
Ver tipos y relaciones
Los diagramas de clases muestran los detalles de los tipos, por ejemplo, sus miembros constituyentes y las relaciones entre ellos. La visualización de estas entidades es una vista dinámica en el código. Esto significa que puede editar tipos en el diseñador y, a continuación, ver las modificaciones reflejadas en el código fuente de la entidad. Del mismo modo, el diagrama de clases se mantiene sincronizado con los cambios realizados en los archivos de código.
Nota
Si el proyecto contiene un diagrama de clases y el proyecto hace referencia a un tipo que se encuentra en otro proyecto, el diagrama de clases no muestra el tipo al que se hace referencia hasta que se compila el proyecto para ese tipo. Del mismo modo, el diagrama no muestra los cambios en el código de la entidad externa hasta que vuelva a generar el proyecto para esa entidad.
Flujo de trabajo de los diagramas de clases
Los diagramas de clases pueden ayudarle a comprender la estructura de clases de los proyectos. Estos proyectos podrían haber sido creados por otros desarrolladores, o simplemente necesita un actualizador en un proyecto que creó usted mismo. Puede usar diagramas de clases para personalizar, compartir y presentar información del proyecto con otros usuarios.
El primer paso para presentar información del proyecto es crear un diagrama de clases que muestre lo que desea mostrar. Para obtener más información, vea Agregar un diagrama de clases. Puede crear varios diagramas de clases para un proyecto que se puede usar para mostrar una vista distinta del proyecto, un subconjunto elegido de los tipos del proyecto o un subconjunto elegido de los miembros de los tipos del proyecto.
Además de definir lo que muestra cada diagrama de clases, también puede cambiar la forma en que se presenta la información; para obtener más información, vea Personalizar diagramas de clases.
Después de ajustar uno o varios diagramas de clases, puede copiarlos en documentos de Microsoft Office e imprimirlos o exportarlos como archivos de imagen. Para obtener más información, vea Copiar elementos de diagrama de clases en un documento de Microsoft Office, Imprimir diagramas de clases y Exportar diagramas de clases como imágenes.
Nota
El Diseñador de clases no realiza un seguimiento de la ubicación de los archivos de origen, por lo que cambiar la estructura del proyecto o mover archivos de origen en el proyecto puede hacer que el Diseñador de clases pierda el seguimiento del tipo, especialmente el tipo de origen de una definición de tipo, clases base o tipos de asociación. Puede que reciba un error, como El Diseñador de clases no puede mostrar este tipo. Si lo hace, arrastre de nuevo el código fuente modificado o reubicado al diagrama de clases para volver a reproducirlo.
Añade diagramas de clases a los proyectos
Para diseñar, editar y refactorizar clases y otros tipos, agregue un diagrama de clases al proyecto de C#, Visual Basic o C++. Para visualizar diferentes partes del código en un proyecto, agregue varios diagramas de clases al proyecto.
No se pueden crear diagramas de clases a partir de proyectos que comparten código entre varias aplicaciones. Para crear diagramas de clases UML, consulte Creación de proyectos y diagramas de modelado de UML.
Instalación del componente Diseñador de clases
Si no ha instalado el componente Diseñador de Clases , siga estos pasos para instalarlo.
Abra el Instalador Visual Studio desde el menú Inicio de Windows o seleccionando Herramientas>Obtener herramientas y características en la barra de menús de Visual Studio.
Se abre el Instalador de Visual Studio .
Si ya tiene Visual Studio instalado, haga clic en el botón Modificar de las opciones.
Seleccione la pestaña Componentes individuales y, después, desplácese hacia abajo hasta la categoría Herramientas de código.
Seleccione Diseñador de clases y Modificar.
El componente diseñador de clases empieza a instalarse.
Agregar un diagrama de clases en blanco a un proyecto
En Explorador de soluciones, haga clic con el botón derecho en el nodo del proyecto y elija Agregar>Nuevo Elemento. También puede presionar Ctrl+Mayús+A. Si aparece una ventana pequeña con solo la opción para agregar un archivo de código, elija el botón Mostrar todas las plantillas.
Se abre el cuadro de diálogo Agregar nuevo elemento .
Expanda General y, después, seleccione Diagrama de clases en la lista de plantillas. En el caso de los proyectos de Visual C++, busque en la categoría Utilidad para encontrar la plantilla Class Diagram.
Nota
Si no ve la plantilla Diagrama de Clases, siga los pasos para instalar el componente Diseñador de Clases para Visual Studio. Como se indicó anteriormente en este artículo, el Diseñador de clases no está disponible para .NET Core y .NET 5 y versiones posteriores.
El diagrama de clases se abre en el Diseñador de clases y aparece como un archivo que tiene la extensión .cd en el Explorador de soluciones. Puede arrastrar formas y líneas al diagrama desde Cuadro de herramientaso arrastrar un nodo de proyecto desde el Explorador de soluciones para agregar las clases de ese proyecto.
Para agregar varios diagramas de clases, repita los pasos descritos en este procedimiento.
Para mostrar el contenido de un proyecto completo en un diagrama de clases
Abra un diagrama de clases en blanco y arrastre el nodo del proyecto desde el Explorador de soluciones a la superficie del diagrama de clases. Se crea un diagrama de clases rellenado automáticamente.
Importante
El Diseñador de clases no está disponible en proyectos de .NET Core.
Personalizar diagramas de clases
Puede cambiar la forma en que los diagramas de clases muestran información. Puede personalizar todo el diagrama o los tipos individuales en la superficie de diseño.
Por ejemplo, puede ajustar el nivel de zoom de un diagrama de clases completo, cambiar cómo se agrupan y ordenan los miembros de tipo individuales, ocultan o muestran relaciones y mueven conjuntos individuales o de tipos en cualquier parte del diagrama.
Nota
La personalización de la forma en que aparecen las formas en el diagrama no cambia el código subyacente de los tipos representados en el diagrama.
Las secciones que contienen miembros de tipo, como la sección propiedades de de una clase, se denominan compartimientos. Puede ocultar o mostrar los compartimientos y los miembros de tipo individualmente.
Acercar y alejar el diagrama de clase
Abra y seleccione un archivo de diagrama de clases en Diseñador de clases.
En la barra de herramientas Diseñador de clases, haga clic en el botón Acercar o Alejar para cambiar el nivel de zoom de la superficie del diseñador.
o
Especifique un valor de zoom determinado. Puede usar la lista desplegable Zoom o escribir un nivel de zoom válido (el intervalo válido está comprendido entre 10% y 400%).
Nota
Cambiar el nivel de zoom no afecta a la escala de la impresión del diagrama de clases.
Personalizar la agrupación y ordenación de los miembros del tipo
Abra y seleccione un archivo de diagrama de clases en Diseñador de clases.
Haga clic con el botón secundario en un área vacía de la superficie de diseño y elija Miembros del grupo.
Seleccione una de las opciones disponibles:
Agrupar por tipo separa los miembros de tipo individuales en una lista agrupada de Propiedades, Métodos, Eventos y Campos. Los grupos individuales dependen de la definición de entidades: por ejemplo, una clase no muestra ningún grupo de eventos si aún no hay ningún evento definido para esa clase.
Agrupar por acceso separa los miembros de tipo individuales en una lista agrupada según los modificadores de acceso del miembro. Por ejemplo, Público y Privado.
ordenar alfabéticamente muestra los elementos que componen una entidad como una sola lista alfabética. La lista se ordena en orden ascendente.
Ocultar compartimientos de un modelo
Abra y seleccione un archivo de diagrama de clases en Diseñador de clases.
Haga clic con el botón derecho en la categoría de miembro del tipo que desea personalizar (por ejemplo, seleccione el nodo métodos de una clase.
Haga clic en Ocultar Compartimiento.
El compartimiento seleccionado desaparece del contenedor del tipo.
Ocultar miembros individuales de un tipo
Abra y seleccione un archivo de diagrama de clases en Diseñador de clases.
Haga clic con el botón derecho en el miembro del tipo que desea ocultar.
Haga clic en Ocultar.
El miembro seleccionado desaparece del contenedor del tipo.
Mostrar los compartimientos y miembros ocultos de un tipo
Abra y seleccione un archivo de diagrama de clases en Diseñador de clases.
Haga clic con el botón secundario en el nombre del tipo con el compartimiento oculto.
Haga clic en Mostrar todos los miembros.
Todos los compartimientos y miembros ocultos aparecen en el contenedor del tipo.
Ocultar relaciones
Abra y seleccione un archivo de diagrama de clases en Diseñador de clases.
Haga clic con el botón derecho en la línea de asociación o herencia que desea ocultar.
Haga clic en Ocultar para las líneas de asociación y en Ocultar línea de herencia para las líneas de herencia.
Haga clic en Mostrar todos los miembros.
Todos los compartimientos y miembros ocultos aparecen en el contenedor del tipo.
Mostrar relaciones ocultas
Abra y seleccione un archivo de diagrama de clases en Diseñador de clases.
Haga clic con el botón secundario en el tipo con la asociación o herencia oculta.
Haga clic en Mostrar todos los miembros para ver las líneas de asociación, y haga clic en Mostrar la clase base o Mostrar clases derivadas para ver las líneas de herencia.
Quitar una forma de un diagrama de clases
Puede quitar una forma de tipo del diagrama de clases sin afectar al código subyacente del tipo. Quitar formas de tipo de un diagrama de clases afecta solo a ese diagrama: el código subyacente que define el tipo y otros diagramas que muestran el tipo no se ven afectados.
En el diagrama de clases, seleccione la forma de tipo que desea quitar del diagrama.
En el menú Edición, elija Quitar del diagrama.
La forma de tipo y las líneas de asociación o herencia conectadas a la forma ya no aparecen en el diagrama.
Eliminar una forma de tipo y su código subyacente
Haga clic con el botón derecho en la forma de la superficie de diseño.
Seleccione Eliminar código en el menú contextual.
La forma se quita del diagrama y su código subyacente se elimina del proyecto.
Copiar elementos del diagrama de clases en un documento de Microsoft Office
Puede copiar formas desde un diagrama de clases de .NET (archivo .cd) a otros documentos. Obtendrá una copia de la forma o su código subyacente, en función del tipo de documento donde lo pegues. Para copiar las formas de diagramas de clase UML en un proyecto de modelado, vea Exportar diagramas como imágenes.
Copia de un único elemento
Haga clic con el botón derecho en la forma y elija Copiar imagen.
Copiar varios elementos
Seleccione las formas del diagrama que desea copiar.
Haga clic con el botón derecho en la selección y elija Copiar imagen.
Copiar todos los elementos de un diagrama de clases
Haga clic con el botón derecho en la superficie del diagrama y elija Seleccionar todoo presione Ctrl+A.
En el menú Editar, seleccione Copiar imagen.
También puede elegir Copiar en lugar de Copiar imagen. Copiar copia la imagen como un mapa de bits normal. Copiar imagen copia la imagen como una imagen vectorial, que es más adecuada para la mayoría de las aplicaciones de Office.
Exportación de diagramas de clases como imágenes
Para exportar un diagrama de clases que creó a partir del código de un proyecto, guarde el diagrama como una imagen. Si quiere exportar diagramas de clases UML en su lugar, consulte Exportar diagramas como imágenes.
Exportación de un diagrama
Abra el archivo de diagrama de clases (.cd).
En el menú Diagrama de clase o en el menú contextual de la superficie del diagrama, elija Exportar diagrama como imagen.
Seleccione un diagrama.
Seleccione el formato que desee.
Elija Exportar para completar la exportación.
Para actualizar automáticamente las imágenes exportadas vinculadas desde otros documentos, vuelva a exportar el diagrama en Visual Studio.
Imprimir diagramas de clases
Puede imprimir un diagrama de clases mediante la característica de impresión de Visual Studio.
Para imprimir un diagrama de clases
Abra el diagrama de clases.
Haga clic en Imprimir en el menú Archivo.
Se imprimirá el diagrama de clases completo. Es posible que tenga que ajustar la configuración en el cuadro de diálogo Configurar página para poder imprimir en un tamaño adecuado.
Adición de comentarios a diagramas de clases
Puede usar formas de comentario para anotar diagramas de clases. Una forma de comentario tiene una propiedad, Texto, en la que puede escribir texto. Las formas de comentario solo existen en la superficie del diagrama y no en el código.
Un comentario reside en la vista Diagrama de clases del Diseñador de clases. Si abre un segundo diagrama de clases en el mismo proyecto, los comentarios que ha creado en la primera vista no están visibles. Si elimina un diagrama, también se eliminan todos los comentarios que contiene.
Puede cambiar el tamaño de una forma de comentario, pero no puede cambiar otros aspectos de su apariencia, como su color de fondo, fuente o tamaño de fuente.
Para agregar un comentario
Arrastre un comentario del Cuadro de herramientas del Diseñador de clase al diagrama de clases.
Haga clic en la nueva forma de comentario del diagrama y escriba el texto que desee.
Uso de los métodos abreviados de teclado y del mouse en la ventana Diagrama de clases y Detalles de clases
Puede usar el teclado además del ratón (u otro dispositivo señalador) para realizar acciones de navegación en el Diseñador de Clases y en la ventana Detalles de Clase .
Usar el mouse en el Diseñador de clases
En los diagramas de clases se admiten las siguientes acciones del ratón:
Combinación de botones del ratón | Contexto | Descripción |
---|---|---|
Doble clic | Elementos de forma | Abre el editor de código. |
Doble clic | Conector de círculo | Expandir o contraer el círculo. |
Doble clic | Etiqueta del conector de círculo | Invoca el comando Mostrar interfaz. |
Rueda del mouse | Diagrama de clases | Desplácese verticalmente. |
Mayús + rueda del mouse | Diagrama de clases | Desplácese horizontalmente. |
Ctrl + Rueda del mouse | Diagrama de clases | Zoom. |
Ctrl+Mayús + clic | Diagrama de clases | Zoom. |
Usar el mouse en la ventana Detalles de clase
Con un ratón, puede cambiar la apariencia de la ventana de Detalles de Clase y los datos que se muestran de las siguientes maneras:
Hacer clic en cualquier celda editable le permite editar el contenido de esa celda. Los cambios se reflejan en todos los lugares en los que se almacenan o muestran los datos, incluidos en la ventana propiedades de y en el código fuente.
Al hacer clic en cualquier celda de una fila, la ventana Propiedades muestra las propiedades del elemento representado por esa fila.
Para cambiar el ancho de una columna, arrastre el límite en el lado derecho del encabezado de columna hasta que la columna sea el ancho que desee.
Puede expandir o contraer nodos de compartimiento o de propiedad haciendo clic en los símbolos de flecha situados a la izquierda de la fila.
La ventana Detalles de clase dispone de varios botones para crear nuevos miembros en la clase actual y para navegar entre los compartimientos de los miembros en la cuadrícula de la ventana Detalles de clase.
Usar el teclado en el Diseñador de clases
Las siguientes acciones de teclado se admiten en diagramas de clases:
Clave | Contexto | Descripción |
---|---|---|
Teclas de dirección | Dentro de las formas de tipo | Navegación de tipo árbol por el contenido de la forma (permite efectuar un recorrido cíclico). Las teclas izquierda y derecha expanden y contraen el elemento actual, si es expansible, y navegan al elemento primario si no lo es (consulte los métodos de navegación por la vista de árbol para obtener información detallada sobre su comportamiento). |
Teclas de dirección | Formas de nivel superior | Mover las formas en el diagrama. |
Mayús+teclas de dirección | Dentro de las formas de tipo | Crear una selección continua compuesta por elementos de forma, como miembros, tipos anidados o compartimientos. Estos métodos abreviados no permiten el recorrido cíclico. |
Página principal | Dentro de las formas de tipo | Navegar al título de la forma de nivel superior. |
Página principal | Formas de nivel superior | Desplácese a la primera forma del diagrama. |
Fin | Dentro de las formas de tipo | Navegue hasta el último elemento visible dentro de la forma. |
Fin | Formas de nivel superior | Vaya a la última figura del diagrama. |
Mayús+Inicio | Dentro de la forma de tipo | Selecciona los elementos de la forma a partir del elemento actual y termina con el elemento superior en la misma forma. |
Mayús+Fin | Dentro de la forma de tipo | Igual que Mayús+Inicio, pero en dirección descendente. |
Entrar | Todos los contextos | Invoca la acción predeterminada en la forma, que también está disponible haciendo doble clic. En la mayoría de los casos se trata de la acción Ver código, pero en algunos elementos varía (círculos, encabezados de compartimiento o etiquetas de círculo). |
+ y - | Todos los contextos | Si el elemento que tiene el foco es expansible, estas teclas expanden o contraen el elemento. |
> | Todos los contextos | En los elementos con elementos secundarios, expande el elemento (si se contrae) y navega al primer elemento secundario. |
< | Todos los contextos | Se desplaza al elemento primario. |
Alt+Mayús+L | Interior de las formas de tipo y sobre las formas de tipo. | Navega al círculo (si existe) de la forma seleccionada actualmente. |
Alt+Mayús+B | Interior de las formas de tipo y sobre las formas de tipo. | Si la lista de tipos base se muestra en la forma de tipo y tiene más de un elemento, activa el estado de expansión de la lista (contraer o expandir). |
Eliminar | Sobre tipos y formas de comentario | Invoca el comando Quitar del diagrama. |
Eliminar | Sobre cualquier otra cosa. | Invoca el comando Eliminar del código (miembros, parámetros, asociaciones, herencia, etiquetas de círculo). |
Ctrl+Supr | Todos los contextos | Invoca el comando Eliminar del código en la selección. |
Tabulación | Todos los contextos | Navega al siguiente elemento secundario del mismo elemento principal (permite el recorrido cíclico). |
Mayús+Tabulador | Todos los contextos | Navega al elemento secundario anterior del mismo elemento primario (permite el recorrido cíclico). |
Barra espaciadora | Todos los contextos | Alterna la selección sobre el elemento actual. |
Usar el teclado en la ventana Detalles de clase
Nota
Los siguientes enlaces clave imitan la experiencia de escribir código.
Use las siguientes teclas para navegar por la ventana Detalles de clase:
Clave | Resultado |
---|---|
, (coma) | Si el cursor está en una fila de parámetros, al escribir una coma se mueve el cursor al campo Nombre del parámetro siguiente. Si el cursor está en la última fila de parámetros de un método, lo mueve al campo <agregar parámetro>, que usted puede usar para crear un nuevo parámetro. Si el cursor está en otra parte de la ventana Detalles de clase, al escribir una coma se agrega literalmente una coma al campo actual. |
; (punto y coma) o ) (paréntesis de cierre) | Mueve el cursor al campo Nombre de la siguiente fila de miembro en la cuadrícula de la ventana Detalles de clase. |
Tabulación | Mueve el cursor al siguiente campo, primero se mueve a la izquierda a la derecha y, a continuación, de arriba a abajo. Si el cursor se está moviendo desde un campo en el que se ha escrito texto, Detalles de clase procesa ese texto y lo almacena, siempre que no genere ningún error. Si el cursor está en un campo vacío, como <agregar parámetro>, Tab lo mueve al primer campo de la fila siguiente. |
Barra espaciadora | Mueve el cursor al siguiente campo, primero se mueve a la izquierda a la derecha y, a continuación, de arriba a abajo. Si el cursor está en un campo vacío, como <agregar parámetro>, se mueve al primer campo de la siguiente fila. Tenga en cuenta que si se escribe <space> justo después de una coma, se pasará por alto. Si el cursor está en el campo Resumen, al escribir un espacio se agrega un carácter de espacio. Si el cursor está en la columna Ocultar de una fila determinada, al escribir un espacio se alterna el valor de la casilla Ocultar. |
Ctrl+Tab | Cambie a otra ventana del documento. Por ejemplo, cambie de la ventana detalles de clase a un archivo de código abierto. |
Esc | Si ha empezado a escribir texto en un campo, ESC actúa como tecla «deshacer» y restablece el contenido del campo a su valor anterior. Si la ventana Detalles de clase tiene el foco general sin que ninguna celda concreta tenga el foco, la tecla ESC quita el foco de la ventana Detalles de clase. |
flecha arriba y flecha abajo | Estas teclas mueven el cursor fila a fila, verticalmente, en la cuadrícula de la ventana Detalles de clase. |
Flecha izquierda | Si el cursor está en la columna Nombre, al presionar la flecha izquierda se contrae el nodo actual de la jerarquía (si está abierto). |
Flecha derecha | Si el cursor está en la columna Nombre, al presionar la flecha derecha se expande el nodo actual de la jerarquía (si está contraído). |
Consejo (if the meaning of "Tip" is advice or suggestion)
Para obtener una lista completa de métodos abreviados de teclado, vea Métodos abreviados de teclado en Visual Studio.