Visualizza messaggio singolo
Vecchio 04-11-2004, 00.57.33   #12
P8257 WebMaster
Gold Member
 
Registrato: 07-01-2002
Loc.: Milano
Messaggi: 2.863
P8257 WebMaster promette bene
DEBUG ?? PERCHE' .. E A COSA SERVE?

In alcuni casi, oltre al classico messaggio di errore che tutti conosciamo bene... ci viene anche detto:

Codice:
Premere Ok per terminare l'applicazione.
Premere Annulla per eseguire il debug.
Perché tutto questo avviene? .. E perché ci viene data la possibilità di debuggare?

Innanzitutto occorre spendere almeno 2 parole veloci sul debug...

Il debug è la correzione dei "vizi" (bugs) di un programma, si tenta ciioè di testare il programma nel suo normale utilizzo e in situazioni limite di modo che esso sappia reagire a qualsiasi condizione per evitare proprio che l'utente si trovi nella malaugurata situazione in cui l'imperfezione del programma stesso ne provochi il malfunzionamento...
Il debug è la fase in cui il programmatore (codice alla mano) usa il suo stesso programma e "corregge" mettendo mano al codice stesso, le imperfezioni (non me ne vogliano gli addetti ai lavori, per questa definizione stringata )

Tornando al punto della questione...
Perché Windows mi propone di eseguire il debug in questi casi?
La ragione principale è che Windows rileva nel sistema la presenza di un debugger, cioè, in parole povere, rileva che nel sistema è installato un ambiente idoneo a poter assolvere alla funzione sopra citata e di conseguenza ci dà la possibilità di utilizzarlo per detto scopo...
Il problema più grande, è che, a meno che l'errore non sia causato da un applicativo da NOI STESSI SCRITTO, sarà IMPOSSIBILE EFFETTUARE IL DEBUG DI COMPONENTI DI WINDOWS O DI PROGRAMMI DI TERZE PARTI poiché non disponiamo del codice sorgente (e molte volte, anche delle conoscenze necessarie) per poter svolgere questa funzione.

Quando si preme il tasto Annulla, l'applicazione verrà terminata e verrà generato un "dump" dell'area di memoria utilizzata, successivamente verrà istanziato il debugger predefinito che provvederà a disassemblare il dump per fornirci una visione della parte assembly dello stesso, con paricolare interesse per la regione di memoria che ha causato l'errore.... Queste informazioni e questa procedura sono praticamente inservibili ed inutili, sia che si tratti di componenti di Windows, che di programmi di terze parti, dato che non potremmo in ogni caso debuggare e/o manipolare i sorgenti.

Per risparmiare tempo, il consiglio è quindi, di premere il tasto Ok...

Al contrario, questa funzione si rivela molto utile nel caso l'utente sia un programmatore e si trovasse di fronte ad un errore di questa natura e volesse eseguire al volo il debug del codice.

Infine, parlando di debugger, è doveroso ricordare che molti ambienti di sviluppo e programmazione installano il proprio debugger, primo tra tutti è Visual C++ di Microsoft che interagisce proprio con questa finestra di dialogo.

Bye
P8257 WebMaster non è collegato   Rispondi citando