Setup

Debug

Acompanhar o estado de nossos objetos, o valor das nossas variáveis e até aonde o nosso programa está executado sem erros, é algo extremamente importante para garantir a integridade do algoritmo implementado.

Acompanhar o estado de nossos objetos, o valor das nossas variáveis e até aonde o nosso programa está executado sem erros, é algo extremamente importante para garantir a integridade do algoritmo implementado.

O termo Debug deriva da expressão "procurar e remover insetos", termo este utilizado devido localização de uma mariposa (Bug) presa no relé em um dos grandes computadores da época como o Mark II de Harvard, ocasionando assim falhas no processo.

Todas as IDEs, possuem um recurso de acompanhamento de código, denominado de breakpoint e antes de iniciar a implementação de algoritmos complexos, é de suma importância dominar os comandos do debug.

Depurar é a capacidade que o desenvolvedor adquire em prever e constatar em um determinado ponto na aplicação, o estado atual das variáveis que representam os valores e objetos existentes ao longo da execução de um programa.

Abaixo, temos uma ilustração dos comandos relacionados a debug utilizando a IDE IntelliJ.

Primeiro, inicie o seu programa em modo debug.

Em seguida, você deve clicar na linha que gostaria de "segurar" a execução, denominamos esta ação de breakpoints.

  1. Funcionalidade de Step Over (F8) – Avança para a próxima linha.
  2. Funcionalidade de Step Into (F7) – Avança para a próxima linha considerando o interior da proxima chamada.
  3. Funcionalidade de Resume Program (F9) – Libera a execução do programa até que encontre outro breakpoint

Abaixo iremos ilustrar que com uma aplicação simples de operações matemáticas podemos praticar depuração de código.

public class OperacaoMatematica {
    public static void main(String[] args) {
        int numero = 0;

        numero = 1+1 ;

        numero = multiplicar(3,5);

        numero = numero - 5;

        numero = numero / 2;

        // qual o resultado que será impresso?
        // e quais foram o valores da variável número ao longo da execução ?
        System.out.println(numero);

    }
    static int multiplicar(int numeroUm, int numeroDois){
        int resultado = numeroUm * numeroDois;
        return resultado;
    }
}

Pare para pensar:

  1. Qual seria o valor da variável numero na linha 5?
  2. Qual seria o valor da variável numero na linha 7?
  3. Qual seria o valor da variável numero na linha 15?
🏆 Sucesso
Depurar o código, é a capacidade e a percepção de prevê o resultado da execução em ponto específico.

Consulte o nosso vídeo Depurando cálculos monetários explicando em um cenário prático o uso dos recursos de depuração.

Depurando cálculos monetários

Referências