Che cos' un Debug.

Debugging (o semplicemente debug)  un'attivit che consiste nella individuazione della porzione di software affetta da errore (bug) rilevati nei software
a seguito dell'utilizzo del programma.

Il termine debug sembra sia stato coniato ai tempi dei primi calcolatori elettronici, costruiti con valvole termoioniche e relais e che frequentemente rimanevano
bloccati a causa di insetti che si infilavano tra i contatti rimanendo fulminati. Debugging era appunto l'azione svolta per individuare i punti in cui
i contatti erano fulminati, a cui seguiva l'operazione di riparazione vera e propria.

L'errore pu essere rilevato sia in fase di collaudo del programma, quando cio questo  ancora in fase di sviluppo e non  stato ancora dichiarato pronto
per essere utilizzato dall'utente finale, sia in fase di utilizzo del programma da parte dell'utente finale.

Alla rilevazione dell'errore segue la fase di debugging, ossia di individuazione della parte di software, a volte molto complesso, nella quale si annida
l'errore.

Questa attivit  oggi supportata da programmi specifici (debuggers), che mostrano allo sviluppatore l'esecuzione, istruzione per istruzione, del programma,
permettendo nel contempo l'analisi dei dati trattati dal programma stesso.

In assenza di tali strumenti per le attivit di debugging, si ricorre alla pi semplice ma anche meno efficace tecnica di loggare (stampare) a video o su
file le istruzioni che il programma sta eseguendo, inserendo a tal scopo nel codice delle istruzioni di debug.

L'attivit di debug  una delle operazioni pi importanti per la messa a punto di un programma, spesso estremamente difficile per la complessit dei software
oggi in uso e delicata per il pericolo di introdurre nuovi errori o comportamenti difformi da quelli desiderati nel tentativo di correggere quelli per
cui si  svolta l'attivit di debug.

Info prelevate da Wikipedia.

