DevTools

Sources E Debugger

Sources: file, breakpoint e debugger: Page, Workspace, Snippets, breakpoints, conditional breakpoints, step over/into/out, Scope e Call Stack.

Console E Codice | Sources E Debugger
Competenze: riconoscere gli strumenti trattati, interpretarli correttamente e applicarli durante un’analisi del browser.

Sources: file, breakpoint e debugger

Durata: 50 minuti · Chrome o browser Chromium compatibile

Page, Workspace, Snippets, breakpoints, conditional breakpoints, step over/into/out, Scope e Call Stack. Gli strumenti di sviluppo permettono di osservare ciò che accade nel browser. Le opzioni possono variare tra versioni: se una scheda non compare, cercala nel menu » oppure More tools.

Che cosa osservare e perché

Usa gli strumenti solo su pagine che sei autorizzato a esaminare. La modifica di HTML, CSS o JavaScript in DevTools è in genere locale e temporanea: non equivale a modificare i file del sito. Una richiesta o un dato non presente non è necessariamente un errore.

LABORATORIO

Analizzare sources: file, breakpoint e debugger con Chrome DevTools

Procedura guidata, circa 20 minuti

Obiettivo: applicare le funzioni studiate su una pagina già disponibile nel browser. Occorrente: Chrome, DevTools e una pagina dimostrativa o del corso.

  1. Apri Sources e individua il riquadro Page.
  2. Trova uno script JavaScript caricato dalla pagina.
  3. Apri il file e individua i numeri di riga.
  4. Aggiungi un breakpoint cliccando sul numero di una riga eseguita da un evento.
  5. Esegui l’azione che richiama quella riga e osserva Paused.
  6. Esamina Scope e Call Stack; usa Step over e Resume.
  7. Disattiva il breakpoint per ripristinare il normale funzionamento.
Output atteso: Quando il codice raggiunge il breakpoint, l’esecuzione si sospende e mostra variabili e stack.
Se non trovi il comando: verifica il nome della scheda e usa », More tools o il Command Menu. Se un risultato non compare, annota ciò che osservi e confrontalo con il docente; non modificare impostazioni del server.

Esercizio autonomo: ripeti l’analisi su una seconda pagina e produci una tabella con azione, scheda usata, dato osservato e interpretazione.

Verifica dei concetti

Che cosa consente di osservare questa lezione?
Page, Workspace, Snippets, breakpoints, conditional breakpoints, step over/into/out, Scope e Call Stack.
Le modifiche effettuate in DevTools vengono pubblicate sul sito?
No: salvo strumenti e procedure specifiche di sviluppo locale, le modifiche al DOM o agli stili sono temporanee e riguardano il browser.
Perché un pannello può apparire vuoto?
Perché la pagina non utilizza la funzione, non ci sono eventi o risorse pertinenti oppure la registrazione non era attiva.
Come si recupera una scheda non visibile?
Dal menu » della barra delle schede, More tools o Command Menu; le etichette dipendono dalla versione.
Che cosa va annotato nel rapporto finale?
Azione effettuata, strumento utilizzato, evidenza osservata e interpretazione, distinguendo fatti e ipotesi.

Debug di TypeScript e framework con Source Maps

Collegare il codice JavaScript eseguito dal browser ai sorgenti originali di un progetto moderno.

Concetti e strumenti

  • Bundler: Vite e Webpack possono trasformare e raggruppare i moduli; il browser esegue JavaScript, non direttamente TypeScript o JSX.
  • Source Maps: file di mappatura che associano codice generato e sorgenti originali, quando disponibili e correttamente configurati.
  • Breakpoint: si può impostare sul sorgente originale visualizzato in Sources; la posizione effettiva dipende dalla qualità della mappatura.
  • Ignore List: evita di entrare durante lo step-debug in script di libreria o framework; alcune versioni rilevano automaticamente script di terze parti.
  • Privacy: pubblicare Source Maps può rendere più facilmente consultabili parti del sorgente: la scelta va valutata dal responsabile del progetto.
LABORATORIO

Debug di TypeScript e framework con Source Maps

Procedura guidata con osservazioni verificabili

Obiettivo: Collegare il codice JavaScript eseguito dal browser ai sorgenti originali di un progetto moderno.

  1. Apri un’applicazione dimostrativa autorizzata costruita con Vite o un altro bundler e con Source Maps abilitate.
  2. In Settings → Preferences → Sources verifica che l’uso delle Source Maps JavaScript sia attivo (i nomi delle opzioni possono cambiare).
  3. Apri Sources, individua la struttura dei file originali, ad esempio un componente .tsx, .jsx o .ts.
  4. Imposta un breakpoint su un gestore di clic; interagisci con la pagina e verifica il punto in cui l’esecuzione si interrompe.
  5. Osserva Scope e Call Stack, poi prova Step into e Step over.
  6. In Settings → Ignore List, se disponibile, aggiungi una regola per i file di dipendenze e confronta il comportamento dello step-debug.

Risultato atteso: Un breakpoint attivo nel sorgente originale e una breve spiegazione della differenza tra codice sorgente e codice generato.

Se non funziona: controlla di aver selezionato la scheda corretta, ricarica la pagina e verifica che la funzione sia disponibile nella tua versione di Chrome. Non tutte le pagine espongono le stesse risorse.

Esercizio autonomo: Confronta lo stack prima e dopo l’Ignore List e descrivi perché il debug diventa più leggibile.

Verifica dei concetti

Il browser esegue direttamente TypeScript?
No: il TypeScript viene trasformato in JavaScript.
A cosa serve una Source Map?
A collegare il codice eseguito al sorgente originale.
Cosa succede se la mappa non è disponibile?
Il debug può mostrare soltanto il JavaScript generato.
Ignore List cancella il codice delle librerie?
No: modifica la navigazione nel debugger, non il codice eseguito.
Un breakpoint nel sorgente originale funziona sempre?
Dipende da mappatura, ottimizzazioni e configurazione del progetto.