Neste vídeo, vamos a aprender a visualizar e trabalhar com o depurador.
Utilize o depurador para fazer seguimento e comprovar que nossa programação responda às expectativas funcionais.
O depurador lhe permite visualizar:
- O estado da memória
- O valor das variáveis
- Os registros e seleções atuais de cada tabela
- O código durante a execução.
Vamos a reutilizar o formulário com as variáveis para explorar o depurador.
Vamos a adicionar um ponto de ruptura (voltaremos a ele mais a frente) e mostrar o formulário.
Quando usamos os botões que não estão dentro do modo de seguimento, a execução é levada a cabo com normalidade.
Se fazemos clique em um botão que está dentro do modo de seguimento, aparece o depurador.
Podemos definir 5 áreas no Explorador:
1°) O
painel de código fonte: esta área mostra o método que se está executando. Aqui podemos:
- Colocar e tirar pontos de ruptura
- Arrastar para cima ou para baixo o cursor amarelo que indica a seguinte linha a executar (pelo que é possível voltar ao código que já foi executado)
- Mover o mouse sobre um campo ou variável para mostrar seu conteúdo
- Faça clique em um objeto e o mova em direção a área de expressões
2°) A segunda área corresponde aos
botões de navegação e a cobriremos mais ao fundo mais a frente. Uma mensagem de ajuda explica o que faz cada botão.
3°) A área de
Expressões personalizadas aqui
4°) A área de todas as
expressões disponíveis em 4D (tabelas, campos, constantes, variáveis, processos, etc.)
5°) A
cadeia de chamada que representa a cadeia de métodos que nos permitem chegar ao programa mostrado.
Vamos deter a execução do método.
Há 5 formas de mostrar o depurador:
1°) Inserindo o comando TRACE em um método. Cada vez que é encontrado o comando TRACE, o depurador é mostrado automaticamente.
2°) Colocando um ponto de ruptura: isso é o que fizemos neste botão
3°) Durante a utilização do programa (em modo execução), pode utilizar os seguintes atalhos:
- "Alt + Shift + clique direito" em Windows
- O "Comando + Alt + Ctrl + clique" em Mac
A lista de processos aparece.
Pelo momento, lhe estamos fazendo seguimento ao processo principal, mais a frente, no caso da operação multi processo, você pode escolher que processo rastrear.
Assim que elegemos o processo principal e se fazemos clique em "Declaration", aparece automaticamente o modo seguimento e podemos ver o conteúdo da variável POP1.
Podemos aumentar a janela do modo de seguimento.
Podemos memorizar a posição e as variáveis armazenadas ali, e inclusive mudar os valores diretamente aqui. Assim que se queremos mudar o valor de v1, podemos colocar 300 e aqui uma versão em inglês da terceira fase.
Obviamente, se voltamos ao processo principal e assinalamos valores ao array, quando passamos por aqui de novo, na terceira linha teremos o valor que se definiu aqui.
Como mencionamos anteriormente, é possível mover o cursor para trás com a finalidade de executar as linhas novamente.
4°) No entorno Desenho, quando executa um método, faça clique no botão de execução e selecione "Executar e depurar", já seja no processo aplicação ou em um novo processo. Neste caso, o modo de seguimento aparece automaticamente de maneira que podemos depurar o método.
5°) Uma última maneira de mostrar um equivalente ao modo de seguimento é utilizar o Explorador de execução com a tecla "Ctrl + Shift + F9". O Explorador de execução (que só está disponível para os desenvolvedores e outros usuários autorizados) lhe permite visualizar a lista de processos, por exemplo, o processo principal e logo lhe fazer seguimento.
A partir de aqui, quando se faz clique em um botão que executa código, veremos aparecer o modo de seguimento com a linha de código que está ao ponto de ser executada.
Há 5 formas de mostrar o modo de seguimento.
As mais frequentes são:
- Pontos de ruptura
- E atalhos de teclado.
O depurador também aparece, geralmente involuntariamente, quando 4D não pode executar o código como (erros de sintaxes, erros tipográficos, etc.). É mostrada uma mensagem que lhe permite passar ao modo seguimento.
Vejamos um exemplo no método de navegação: se eliminamos o = aqui e guardamos, 4D mostra um erro e propõe fazer seguimento ao código para que nos mostre o problema.