Breakpoint e debug a runtime



Per verificare il funzionamento logico delle applicazioni, in fase di debug, risulta molto utile seguirne l'esecuzione passo passo. Visual Studio permette questo tipo di analisi mostrando ad ogni step, lo stato di oggetti e variabili.

Possiamo indicare i punti in cui vogliamo interrompere l'esecuzione della applicazione inserendo nel codice i cosiddetti breakpoint. Un breakpoint viene visualizzato con una linea rossa in corrispondenza della riga di codice sulla quale si blocca il programma e si può aggiungere o togliere cliccando sulla barra a sinistra dello spazio di editing o premendo il tasto F9.

Per avviare il debug di un progetto, scegliere l'opzione "Start Debugging" presente all'interno del menu "Debug" (o in alternativa, premere il tasto F5).

Figura 1. Esecuzione passo passo con i breakpoint

Esecuzione passo passo con i breakpoint

Una volta avviato il debug ci si può muovere all'interno del codice con il tasto F5 (per passare direttamente al breakpoint successivo), o F11 (per passare alla riga di codice successiva). Passando il puntatore del mouse sopra le variabili facciamo apparire delle finestre che mostrano i valori attuali di ogni campo, oggetto o proprietà.

Figura 2. Visualizzare lo stato delle variabili

Visualizzare lo stato delle variabili

Le stesse informazioni possiamo trovarle anche nelle finestre: , e che rispettivamente visualizzano:

  • Autos - mostra lo stato delle variabili utilizzate all'interno dello statement corrente (permettendo inoltre di cambiarne i valori per modificare l'esecuzione dell'applicazione a run-time),
  • Locals - mostra lo stato delle variabili locali all'applicazione (anche in questo caso permettendo di cambiarne i valori nel corso dell'esecuzione),
  • Watch - mostra lo stato delle variabili che decidiamo di ispezionare, selezionando e spostandole direttamente all'interno della finestra.

Figura 3. Finestre Watch

Finestre Watch

Altra funzionalità veramente molto utile, per la fase di debug delle proprie applicazioni (soprattutto per siti ASP.NET o applicazioni basate su Windows Sharepoint Services), è la funzione "Attach to process" presente sempre all'interno del menu "Debug".

Questo meccanismo permette all'utente di "attaccare" il debugger presente all'interno dell'IDE ad uno dei processi in esecuzione sulla macchina locale o in remoto (tramite il remote debugger di Visual Studio) e di eseguire operazioni di introspezione su applicazioni che sono già in esecuzione. Per esempio, possiamo selezionare il processo w3wp.exe (processo con cui gira IIS su Windows Server 2003 e Windows Vista) ed avviare il debug di una delle nostre applicazioni ASP.NET già in esecuzione.

Figura 4. Attach to process

Attach to process

Ultimi articoli Editor

Adobe Edge, la prima animazione HTML5

Come creare una animazione HTML5 con Adobe Edge, esempio completo

Adobe Edge, l'interfaccia

Esaminiamo pannelli e menu del tool gratuito di Adobe per la...

Trasformazioni XSLT in Dreamweaver 8

Primo sguardo agli strumenti XML: trasformare un feed RSS

Layout senza tabelle con Dreamweaver 8

Esaminiamo gli strumenti CSS avanzati del software di Adobe/Macromedia

Il nuovo Dreamweaver 8

Panoramica delle principali novità dell'ultima release del popolare...

Altri articoli

Guide Editor

Guida WebMatrix

Entrare nel mondo dello sviluppo di applicazioni Web con Webmatrix,...

Guida Notepad++

Un editor testuale che funziona perfettamente anche come editor HTML...

Guida Aptana

Creare siti Web o applicazioni con Aptana, l'editor open source,...

Altre guide

Newsletter @Daily HTML.it

Ogni mattina, dal lunedì al venerdì, le novità pubblicate su tutti i siti tecnici del network HTML.it: articoli, guide, notizie dal Web, blog e molto altro.

Iscriviti alla newsletter

Altre newsletter

Corsi in aula

Corso Webmaster base

18 Giugno 2012 a Milano
Disponibilità: 6 Posti

Corso Google AdWords Base

25 Giugno 2012 a Milano
Disponibilità: 7 Posti

Corso Google AdWords Base

05 Giugno 2012 a Roma
Disponibilità: 7 Posti

Corso Webmaster base

11 Giugno 2012 a Roma
Disponibilità: 7 Posti