Tag Archives: debug

Dicas & Truques

#1 – DebuggerStepThrough

Dicas para melhorar nossa produtividade!

Conheça um atributo útil que pode ser utilizado na etapa de debug complexos, aqueles  que possuem muitas chamadas de métodos.

No debug do VS é comum:

  • F10 para linha-a-linha
  • F11 para passo-a-passo entrando nos métodos

Com o F11, monitoramos melhor o fluxo do código, mas isso pode ser uma tarefa tediosa, porque já conhecemos muitos métodos e o seu comportamento não há problemas.

Resumindo, alternar entre F10 e F11, pode ser complicado e podemos esquecer do F10 onde queríamos e acabamos entrando em métodos desnecessários.

O atributo DebuggerStepThrough

Este atributo utilizado em métodos faz com que o fluxo do debug passo-a-passo (F11) NÃO entre naquele método como se você estivesse dado F10.

MainClass.cs

Um exemplo que retorna a soma de números em métodos separados:

private static int Numero = default(int);

        static void Main(string[] args)
        {
            Metodo1();
            Metodo2();
            Metodo3();            

            Console.WriteLine(Numero);
        }

        private static void Metodo1()
        {
            Numero += 1;
        }

        [DebuggerStepThrough]
        private static void Metodo2()
        {
            Numero += 2;
        }

        private static void Metodo3()
        {
            Numero += 3;
        }

Aqui no debug step-by-step, o fluxo não irá entrar no Metodo2, mesmo sabendo que ele será executado.

Missão cumprida!