Conceitos e Exemplo Prático: Usando Breakpoint

Neste artigo veremos os conceitos e exemplos práticos do uso do Breakpoint.

 Olá pessoal, neste artigo veremos os conceitos sobre o uso de Breakpoint em nossas aplicações e o usaremos em um exemplo prático. Acompanhem:

 O recurso de depuração usando Breakpoint (Ponto de Parada) do ASP.NET é muito útil no desenvolvimento para Web, já que assim podemos “descobrir” o que acontece em nosso código, em tempo de execução, linha a linha, coisa que no ASP clássico era feita de outra forma (quem nunca usou Response.Write e Response.End no ASP?) e que era menos performática, em minha opinião.

 Por meio do Breakpoint, podemos “navegar” em nosso código (da mesma forma em que é feita nas aplicações para Windows), em tempo de execução, por meio de cada Breakpoint que utilizarmos e assim, conseguirmos identificar se nosso código entrou naquele If esperado, por exemplo.

 Os comandos usados pelo Breakpoint são o F9 para inserirmos/excluirmos quantos Breakpoints quiser, o F10 para navegarmos linha a linha pelos códigos, o F11 para entrarmos no método ou na verificação do Breakpoint atual, e o F5 para pularmos por todos os Breakpoints e continuarmos a execução da aplicação no browser.

 Portanto, crie uma aplicação web, dando a ela o nome ExemploBreakpoint. Nela, arraste da ToolBox 1 TextBox, 1 Button e 1 Label, dando a eles os respectivos ID’s: txtNome, btnSalvar e lblNome. Sua página deverá ficar assim:

 Vá a pagina de códigos, nela crie o método Salvar usando a seguinte codificação:

private void Salvar()

{

try

{

if (txtNome.Text != string.Empty)

{

this.lblNome.Text = this.txtNome.Text;

}

else

{

this.lblNome.Text = "Você não digitou nenhum texto!";

}

}

catch (Exception ex)

{

throw new Exception(ex.Message);

}

}

 Perceba que fiz uma verificação simples, se foi digitado algo no TextBox, se foi o Label receberá o que o usuário digitou, senão exibirá uma mensagem qualquer.

 Chame o método Salvar, dando dois cliques no botão Salvar:

protected void btnSalvar_Click(object sender, EventArgs e)

{

Salvar();

}

 Em cima da linha de nosso If, coloque um Breakpoint clicando do lado esquerdo na área cinza, ou simplesmente apertando F9, conforme a imagem abaixo ilustra:


 Aperte F5 para executar a aplicação e clique em OK para permitir ao Web.Config ser modificado para permitir a compilação.

 Agora faça o teste: digite um texto qualquer e clique no botão Salvar. Perceba que automaticamente a janela do seu browser perderá o foco e o Breakpoint que inserimos anteriormente irá mudar de cor:


 Como você pode perceber acima, se passarmos o mouse em cima do TextBox veremos que ele já atribuiu o valor digitado pelo usuário. Aperte F10 para irmos, linha a linha, pelo If, nesse caso ele entrará no If porque digitamos algo no TextBox e exibirá ao usuário o que foi digitado. Aperte F5 para voltarmos ao browser:


 Agora compile novamente, deixe o TextBox em branco, clique no botão Salvar, e perceba que nosso Breakpoint irá pular o If e entrará no Else, já que nosso TextBox está vazio:


 Aperte F5 novamente para voltarmos ao browser:


 Podemos perceber que é muito útil o uso do Breakpoint para inspecionarmos nosso código, principalmente em aplicações complexas que exigem um alto grau de conhecimento da aplicação, aumentando assim a produtividade, já que descobrimos onde está o erro de forma prática, fácil e rápida.

 Podemos definir também alguma condição para que nosso Breakpoint somente seja executado se essa condição for satisfeita, clicando com o botão direito sobre o Breakpoint e clicando em Condition:

 Assim posso estabelecer uma condição específica para que meu Breakpoint seja acionado.

 Temos também a opção Hit Count, em que definimos que o Breakpoint só será acionado quando o mesmo for disparado um determinado número de vezes (por exemplo quando temos um Loop que dá 50 voltas, mais só queremos que entre no Breakpoint a partir da volta 25):



 Assim finalizo o artigo. Muito obrigado a todos!

 Um abraço, e até o próximo artigo

 Wellington Balbo de Camargo

 wellingtonbalbo@gmail.com

Artigos relacionados