Conocer, explorar y depurar el código visualmente con mapas de código

Puede asignar relaciones del código con Visual Studio Ultimate.Al crear mapas del código, aparecen al lado del editor de código.Esto permite centrarse en la tarea porque puede ver el lugar en el código mientras trabaja.

Mapa de código: Relaciones de mapa en el código

Los mapas de código muestran relaciones en el código y aparecen al lado del editor de código. Una flecha verde muestra la posición del cursor en el código. Puede realizar anotaciones en un mapa, igual que en el papel.

Ayuda de los mapas del código evita perder en bases del código, código desconocido, o el código heredado.Por ejemplo, cuando se está depurando, puede que tenga que examinar código en varios archivos y proyectos.Ayuda de los mapas del código navega en torno a estos elementos de código y ver relaciones entre ellos.No tiene que recordar todo este código, seguimiento de archivos, o dibujar un diagrama de papel independiente.Si tiene que dividir el trabajo, los mapas de código actualiza la memoria sobre el código que está trabajando.

Mapas del código del reloj en acción: Código complejo de introducción al mapa de código (canal 9)

Requisitos

  • Visual Studio 2012,1 y una de estas ediciones:

    • Visual Studio 2012 Ultimate para crear mapas de código del editor de código o el explorador de soluciones.

      [!NOTA]

      Antes de compartir mapas con otros que utilizan Premium o Professional, asegúrese de que todos los elementos del mapa estén visibles, como elementos ocultos, grupos expandidos, y los vínculos de cruce- grupo.

    • Visual Studio Premium 2012 o Visual Studio 2012 Professional los mapas de código abierto, haga ediciones delimitadas, y navega código.

  • Una solución con el código de .NET de Visual c# o Visual Basic.NET

Comprender el problema

Suponga que hay un error en un programa de dibujo que está trabajando.Para reproducir el error, abra la solución en Visual Studio Ultimate y presione F5 para iniciar la depuración.

Cuando se dibuja una línea y elija Deshacer mi trazo último, no ocurre nada hasta que se dibuje la línea siguiente.

Mapa de código: Error de reproducción

Se inicia en la investigación buscando el método de Undo.Se encuentra en la clase de PaintCanvas.

Mapa de código: Buscar código

Inicio que asigna el código

Ahora se inicia asignar el método de undo y sus relaciones.El editor de código, agregue el método de undo y los campos que hace referencia a un nuevo mapa de código.Cuando se crea un nuevo mapa, puede tardar algún tiempo el índice el código.Esto ayuda operaciones posteriores a ejecutarse más rápidamente.

Mapa de código: Mostrar el método y los campos relacionados

SugerenciaSugerencia

El resaltado verde muestra los últimos elementos agregados al mapa.La flecha verde muestra la posición del cursor en el código.Las flechas entre los elementos representan varias relaciones.Puede obtener más información sobre elementos del mapa examinando la información sobre herramientas.

Mapa de código: Mostrar informaciones sobre herramientas

Para ver la definición de código para cada campo, hacer doble clic en el campo en el mapa, o elegir el campo y presionar F12.La flecha verde se desplaza entre los elementos del mapa.El cursor en el editor de código también se mueve automáticamente.

Mapa de código: Examinar la definición de campo

Mapa de código: Examinar la definición de campo

SugerenciaSugerencia

También puede mover la flecha verde en el mapa desplazar el cursor en el editor de código.

Comprender las relaciones entre los elementos de código

Ahora desea saber que el otro código interactúa con los campos de history y de paintObjects.Puede agregar todos los métodos que hacen referencia a estos campos al mapa.Puede hacer esto de asignación o de código.

Mapa de código: Buscar todas las referencias

Cambie el diseño para cambiar el flujo de relaciones y el mapa más fácil de leer.También puede mover elementos alrededor del mapa arrastrándolos.

Mapa de código: Cambiar el diseño

SugerenciaSugerencia

De forma predeterminada, se gira Diseño incremental.Esto reorganiza el mapa lo menos posible al agregar nuevos elementos.Para reorganizar el mapa completo cada vez que agregue nuevos elementos, desactive Diseño incremental.

Mapa de código: Cambiar el diseño

Examinemos estos métodos.En el mapa, haga doble clic en el método PaintCanvas, o elija este método y presione F12.Enseña que este método crea history y paintObjects como listas vacías.

Mapa de código: Examinar la definición de método

Ahora repita los mismos pasos para examinar la definición de método de clear.Enseña que clear realiza algunas tareas con paintObjects y history.Llama al método de Repaint.

Mapa de código: Examinar la definición de método

Ahora examine la definición de método de addPaintObject.También realiza algunas tareas con history y paintObjects.También llama Repaint.

Mapa de código: Examinar la definición de método

Busque el problema examinando el mapa

Parece que todos los métodos que modifican history y la llamada Repaint de paintObjects.Con todo el método de undo no llama a Repaint, aunque undo modifica los mismos campos.Piense en que puede corregir este problema llamando a Repaint de undo.

Mapa de código: Buscar la llamada a método que falta

Si no hubo un mapa para mostrar esta llamada que falta, puede que se haya más difícil encontrar este problema, especialmente con un código más complejo.

Comparta la detección y los siguientes

Antes de se o algún otro corrija este error, puede realizar anotaciones en el mapa sobre el problema y cómo corregirlo.

Mapa de código: Comentar y marcar elementos para el seguimiento

Por ejemplo, puede agregar comentarios a los elementos de mapa y el marcador mediante colores.

Mapa de código: Elementos comentados y marcados

Si tiene Microsoft Outlook instalado, puede enviar por correo electrónico el mapa a otros.También puede exportar el mapa como una imagen u otro formato.

Mapa de código: Compartir, exportar, enviar por correo

Corrija el problema y muestra lo que se realizó

Para corregir este error, agregue la llamada para Repaint a undo.

Mapa de código: Agregar la llamada a método que falta

Para confirmar la corrección, reinicie la sesión de depuración e intentar reproducir el error.Ahora elegir Deshacer mi trazo último funciona como se esperaba y se confirma creó la solución adecuada.

Mapa de código: Confirmar la corrección del código

Puede actualizar el mapa para mostrar la corrección que creó.

Mapa de código: Actualizar el mapa con la llamada a método que falta

El mapa muestra ahora un vínculo entre deshacer y Dibujar.

Mapa de código: Mapa actualizado con la llamada a método

[!NOTA]

Al actualizar el mapa, puede aparecer un mensaje que indica que el índice de código utilizado para crear el mapa se actualizó.Esto significa que alguien cambió el código, lo que hace el mapa para no coincidir con el código actual.Esto no se detiene de actualizar la correspondencia, pero es posible que tenga que volver a crear la correspondencia para confirmar que coincide con el código.

Ahora se hace con la investigación.Se encontró y corregido correctamente el problema asignando el código.También tiene un mapa que ayuda a navegar alrededor del código, recordar lo que se docto, y muestra los pasos que realizó para corregir el problema.

Vea también

Conceptos

Visualizar y entender el código