Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Debugger | Come Lavorare con l'IDE?
Java OOP
course content

Contenuti del Corso

Java OOP

Java OOP

1. Come Lavorare con l'IDE?
2. Oop
3. Interfaccia

book
Debugger

Cos'è un debugger?

Un debugger è uno strumento che aiuta a eseguire passo passo il codice. È possibile mettere in pausa l'esecuzione del codice in un determinato punto e avviare la modalità di debug per osservare come funziona il programma. Per fare ciò, è necessario impostare un marcatore (breakpoint) sulla riga in cui si desidera interrompere l'esecuzione.

Abbiamo un codice che dovrebbe calcolare la somma dei numeri da uno a dieci, inclusi. Il risultato atteso è 55, ma otteniamo come risposta 45. Impostiamo un breakpoint all'inizio del ciclo per capire perché la risposta non corrisponde. Per farlo, è necessario cliccare con il tasto sinistro del mouse sul numero della riga, dove apparirà un marcatore rosso.

Ecco il codice dallo screenshot, riscritto per una migliore leggibilità e chiarezza:

Main.java

Main.java

copy
12345678910111213
package com.example; import java.util.Arrays; public class Main { public static void main(String[] args) { int result = 0; for(int i = 0; i < 10; i++) { result += 1; System.out.println(result); } } }

Strumenti all'interno della modalità di debug

Esaminiamo brevemente come lavorare con il debugger e quali strumenti sono disponibili al suo interno.

  • Step Over: Con questo pulsante, è possibile continuare l'esecuzione del codice una riga alla volta. Quando viene premuto, il debugger esegue la riga corrente e passa a quella successiva, fermandosi nuovamente;

  • Step Into: Con questo pulsante, è possibile entrare nell'esecuzione di un metodo. Nel nostro esempio non è presente alcun metodo, ma se ci fosse, sarebbe possibile entrarvi e osservare cosa accade al suo interno;

  • Step Out: Questo pulsante è l'opposto del precedente. Permette di uscire dall'esecuzione di un metodo o di un ciclo;

  • È possibile visualizzare i valori delle variabili nella finestra in basso o accanto a queste variabili. Si può chiaramente vedere il valore della variabile result, che inizialmente è zero.

Iterazione attraverso il codice

Per iterare, cliccare sul pulsante "Step Over". Si entra nel ciclo for, e compare il valore della variabile i, che viene creata all'interno del ciclo for. Inizialmente, questa variabile è impostata a zero.

Successivamente, cliccare più volte su "Step Over" per completare un'iterazione e passare alla console per verificare se qualcosa viene stampato a schermo. Si può osservare che la variabile i è aumentata di 1, e "0" è stato visualizzato a schermo, poiché sia la variabile result sia la variabile i erano inizialmente impostate a zero. 0 + 0 = 0 -> questo è ciò che è stato visualizzato a schermo.

Saltiamo le iterazioni di stampa degli altri numeri sulla console e andiamo alla fine. È qui che si può osservare l'errore principale nel nostro ciclo. È necessario visualizzare la somma dei numeri da 0 a 10 inclusi, ma non è stato incluso il 10. Pertanto, quando si vede che i = 9 e quando viene incrementato a 10, si esce dal ciclo poiché 10 !< 10 (10 non è minore di 10).

Per risolvere questo problema, è necessario modificare la condizione in i <= 10. In questo modo si otterrà il risultato corretto.

In sostanza, si è premuto più volte il pulsante "Step Over", arrivando così alla comprensione dell'errore nel ciclo e alla successiva correzione.

Nota

Ho mostrato solo gli strumenti di base del debugger. Per imparare a usarli, è necessario esercitarsi autonomamente. Puoi scrivere un programma simile e verificare in modo indipendente come funziona tutto. Il debugger è uno strumento molto utile perché aiuta a individuare errori e bug nel codice.

1. Qual è lo scopo principale di un debugger?

2. Cosa permette di fare un breakpoint in un debugger?

3. Cosa fa il pulsante "Step Over" del debugger?

question mark

Qual è lo scopo principale di un debugger?

Select the correct answer

question mark

Cosa permette di fare un breakpoint in un debugger?

Select the correct answer

question mark

Cosa fa il pulsante "Step Over" del debugger?

Select the correct answer

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 1. Capitolo 5

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

course content

Contenuti del Corso

Java OOP

Java OOP

1. Come Lavorare con l'IDE?
2. Oop
3. Interfaccia

book
Debugger

Cos'è un debugger?

Un debugger è uno strumento che aiuta a eseguire passo passo il codice. È possibile mettere in pausa l'esecuzione del codice in un determinato punto e avviare la modalità di debug per osservare come funziona il programma. Per fare ciò, è necessario impostare un marcatore (breakpoint) sulla riga in cui si desidera interrompere l'esecuzione.

Abbiamo un codice che dovrebbe calcolare la somma dei numeri da uno a dieci, inclusi. Il risultato atteso è 55, ma otteniamo come risposta 45. Impostiamo un breakpoint all'inizio del ciclo per capire perché la risposta non corrisponde. Per farlo, è necessario cliccare con il tasto sinistro del mouse sul numero della riga, dove apparirà un marcatore rosso.

Ecco il codice dallo screenshot, riscritto per una migliore leggibilità e chiarezza:

Main.java

Main.java

copy
12345678910111213
package com.example; import java.util.Arrays; public class Main { public static void main(String[] args) { int result = 0; for(int i = 0; i < 10; i++) { result += 1; System.out.println(result); } } }

Strumenti all'interno della modalità di debug

Esaminiamo brevemente come lavorare con il debugger e quali strumenti sono disponibili al suo interno.

  • Step Over: Con questo pulsante, è possibile continuare l'esecuzione del codice una riga alla volta. Quando viene premuto, il debugger esegue la riga corrente e passa a quella successiva, fermandosi nuovamente;

  • Step Into: Con questo pulsante, è possibile entrare nell'esecuzione di un metodo. Nel nostro esempio non è presente alcun metodo, ma se ci fosse, sarebbe possibile entrarvi e osservare cosa accade al suo interno;

  • Step Out: Questo pulsante è l'opposto del precedente. Permette di uscire dall'esecuzione di un metodo o di un ciclo;

  • È possibile visualizzare i valori delle variabili nella finestra in basso o accanto a queste variabili. Si può chiaramente vedere il valore della variabile result, che inizialmente è zero.

Iterazione attraverso il codice

Per iterare, cliccare sul pulsante "Step Over". Si entra nel ciclo for, e compare il valore della variabile i, che viene creata all'interno del ciclo for. Inizialmente, questa variabile è impostata a zero.

Successivamente, cliccare più volte su "Step Over" per completare un'iterazione e passare alla console per verificare se qualcosa viene stampato a schermo. Si può osservare che la variabile i è aumentata di 1, e "0" è stato visualizzato a schermo, poiché sia la variabile result sia la variabile i erano inizialmente impostate a zero. 0 + 0 = 0 -> questo è ciò che è stato visualizzato a schermo.

Saltiamo le iterazioni di stampa degli altri numeri sulla console e andiamo alla fine. È qui che si può osservare l'errore principale nel nostro ciclo. È necessario visualizzare la somma dei numeri da 0 a 10 inclusi, ma non è stato incluso il 10. Pertanto, quando si vede che i = 9 e quando viene incrementato a 10, si esce dal ciclo poiché 10 !< 10 (10 non è minore di 10).

Per risolvere questo problema, è necessario modificare la condizione in i <= 10. In questo modo si otterrà il risultato corretto.

In sostanza, si è premuto più volte il pulsante "Step Over", arrivando così alla comprensione dell'errore nel ciclo e alla successiva correzione.

Nota

Ho mostrato solo gli strumenti di base del debugger. Per imparare a usarli, è necessario esercitarsi autonomamente. Puoi scrivere un programma simile e verificare in modo indipendente come funziona tutto. Il debugger è uno strumento molto utile perché aiuta a individuare errori e bug nel codice.

1. Qual è lo scopo principale di un debugger?

2. Cosa permette di fare un breakpoint in un debugger?

3. Cosa fa il pulsante "Step Over" del debugger?

question mark

Qual è lo scopo principale di un debugger?

Select the correct answer

question mark

Cosa permette di fare un breakpoint in un debugger?

Select the correct answer

question mark

Cosa fa il pulsante "Step Over" del debugger?

Select the correct answer

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 1. Capitolo 5
some-alt