Entender, navegar e depurar código visualmente com mapas de códigos
Você pode mapear relacionamentos no código com Visual Studio final.Quando você criar mapas de código, aparecem ao lado do editor de códigos.Isso permite que você focar em sua tarefa como você pode ver seu local no código quando você trabalhar.
Codificar relações de apresentação de mapas no seu código e é exibida ao lado do editor de códigos. Uma seta verde mostra a posição do cursor no código. Você pode fazer anotações em um mapa, apenas como em papel.
Mapas de código ajudam você a evitar obter perdido em grandes bases de código, no código irrelevante, ou em código herdado.Por exemplo, quando você está depurando, talvez seja necessário examinar o código entre vários arquivos e projetos.Codificar a ajuda que os mapas você navegar em torno dessas partes do código e consulte relações entre eles.Você não precisa memorizar todo este código, manter controle de arquivos, ou desenhar um diagrama de papel separado.Se você precisa interromper seu trabalho, os mapeamentos de código ajudam a atualizar sua memória sobre o código que você está trabalhando.
Mapas de código do relógio em ação: Entendendo com código complexo mapa de código canal (9)
Requisitos
Visual Studio 2012.1 e uma destas edições:
O Visual Studio 2012 final para criar mapas de código do editor de códigos ou do solution Explorer.
Observação Antes que você compartilhar com outros mapeamentos que usam superior ou professional, certifique-se de que todos os itens no mapa são visíveis, como itens ocultos, grupos expandidas, e links do grupo cruzado.
Visual Studio 2012 Premium ou Visual Studio 2012 Professional para abrir mapas de código, fazer edições limitadas e navegar em código.
Uma solução com código do Visual basic .NET ou do .NET Visual Basic.
Entender o problema
Suponha que há um erro em um programa de desenho que você está trabalhando.Para reproduzir o erro, abra a solução no Visual Studio final e pressione F5 para iniciar a depuração.
Quando você desenhar uma linha e escolha Desfazer my traço último, nada acontece até que você desenhe a próxima linha.
Assim você começa a investigação procurando pelo método de Undo .Você encontra na classe de PaintCanvas .
Início que mapeia o código
Agora você inicia mapear o método de undo e suas relações.O editor de códigos, adicione o método de undo e os campos que faz referência a um novo mapeamento de código.Quando você cria um novo mapeamento, pode dedicar algum tempo para indexar o código.Isso ajuda uma operações posteriores a executada mais rapidamente.
Dica |
---|
O verde realçando mostra os últimos itens que foram adicionados ao mapa.A seta verde mostra a posição do cursor no código.As setas relações entre itens representam diferentes.Você pode obter mais informações sobre itens no mapa examinando seus tooltips. |
Navegue e examine o código de mapa
Para ver a definição de código para cada campo, clique duas vezes no campo no mapa, ou escolha o campo e pressione F12.A seta verde move entre itens no mapa.O cursor no editor de códigos também move automaticamente.
Dica |
---|
Você também pode mover a seta verde no mapa movendo o cursor no editor de códigos. |
Entenda relações entre partes de código
Agora você deseja saber qual o outro código interage com os campos de history e de paintObjects .Você pode adicionar os métodos que referenciam esses campos no mapa.Você pode fazer isso de mapa ou código.
Alterar o layout para reorganizar o fluxo de relacionamentos e para facilitar o mapa ler.Você também pode mover itens em torno do mapa arrastando-os.
Dica |
---|
Por padrão, Layout incremental estiver ativado.Isso reordena o mapa o menos possível quando você adicionar novos itens.Para reordenar o mapa inteiro cada vez que você adicionar novos itens, desative Layout incremental. |
Vamos examinar esses métodos.No mapa, clique duas vezes no método de PaintCanvas , ou escolha esse método e pressione F12.Você sabe que este método cria history e paintObjects como listas vazios.
Repita agora as mesmas etapas para examinar a definição de método clear .Você sabe que clear executa algumas tarefas com paintObjects e history.Chama o método de Repaint .
Examine agora a definição de método addPaintObject .Também executa algumas tarefas com history e paintObjects.Também chama Repaint.
Localizar o problema examinando o mapa
Aparece que todos os métodos que modificam history e a chamada Repaintde paintObjects .No entanto o método de undo não chama Repaint, mesmo que undo modifique os mesmos campos.Assim você acha que você pode corrigir este problema chamando Repaint de undo.
Se você não tiver um mapa para mostrar você essa chamada ausente, pode ter sido mais difícil localizar esse problema, especialmente com código mais complexo.
Compartilhar seus descoberta e próximas etapas
Antes de você ou alguma outra pessoa corrigir este erro, você pode fazer anotações no mapa sobre o problema e como corrigi-lo.
Por exemplo, você pode adicionar comentários a mapa e embandeirar itens usando cores.
Se você tiver o Microsoft Outlook instalado, você pode enviar por correio eletrônico o mapa para outro.Você também pode exportar o mapa como uma imagem ou outra formato.
Corrigir o problema e mostrar o que você fez
Para corrigir este erro, você adiciona a chamada para Repaint a undo.
Para confirmar a correção, você reiniciar suas sessão e tentativa de depuração para reproduzir o erro.Agora escolha Desfazer my traço último trabalhar-lo como você espera e confirma- fez a correção correta.
Você pode atualizar o mapa para mostrar a correção você fez.
O mapa agora mostra um link entre desfazer e Repinte.
Observação |
---|
Quando você atualiza o mapa, você pode ver uma mensagem que dissesse que o índice de código usado para criar seu mapa foi atualizado.Isso significa que alguém alterou o código, que faz com que seu mapa não corresponde ao código atual.Isso não para atualizar o do mapa, mas talvez você precise recriar o mapa para confirmar que corresponde ao código. |
Agora você terminou com a investigação.Você encontrou com êxito e corrigir o problema mapeando o código.Você também tem um mapa que ajuda você navegar em torno do código, recordem o que você instruído, e mostra as etapas você recebe para corrigir o problema.