Debugging

Introduzione: Con il termine Debugging si intende l’attività che consiste nell’individuazione degli errori (bug) nei programmi di computer.  Un programmatore principiante di solito non sa nemmeno cosa sia e pensa che un programma di computer non appena scritto debba funzionare senza problemi. Invece il debugging e’ la piu’ importante attivita’ svolta dai programmatori di professione e di solito occupa una parte considerevole del loro tempo. Questo video spiega in maniera semplice e concreta di cosa si tratta.

Cose da fare:Si tratta della registrazione video di una lezione di un corso di Fondamenti di Informatica per principianti  tenuto nel 2011 al MIT dal Prof. John Guttag. Cliccando sulla figura si accede alla pagina del MIT OpenCourseware  relativa al Debugging. Cliccate su  Lecture 7: Debugging e quando il video parte su  Youtube (permette di accedere alla trascrizione). La lezione comincia con la rappresentazione dei numeri decimali nel computer: una delle cause principali di errori nei programmi. In seguito si parla del debugging vero e proprio. Usando come base un piccolo programma in python, viene mostrata una maniera sistematica per procedere alla scoperta e correzione degli errori nei programmi. Potete seguire passo a passo il professore facendo le stesse operazioni sul vostro computer. Ecco le istruzioni per installare python.  E il codice usato nella lezione. Inoltre e’ possibile  vedere la trascrizione in inglese della lezione cliccando su una piccola icona sotto il video .Questo documento  contiene  invece altro materiale usato nella lezione inclusa la foto del primo baco!

Cosa succede: La lezione fa parte di un corso che insegna la programmazione a studenti del primo anno senza alcuna esperienza specifica. Viene usato il linguaggio python, uno dei piu’ moderni ma anche dei piu’ semplici da usare . Infatti e’ possibile installarlo facilmente su ogni tipo di computer e lo si usa scrivendone direttamente i comandi in una finestra di testo.

La lezione considerata e’ gia’ a meta’ corso ma e’ abbastanza semplice e autonoma da poter essere vista e compresa anche da chi non conosce python o la programmazione. Lo stesso corso e’ completo di tutti i materiali usati e contiene anche dei video fatti da un’assistente per rivedere con gli studenti i concetti piu’ importanti e provare a fare gli esercizi. Una serie di test e problemi puo’ essere usata per controllare il proprio apprendimento. Visto l’argomento, la comprensione dell’inglese dovrebbe essere facilitata di molto anche per chi lo conosce poco.

Il nome bug (baco) per un errore di programmazione e’ stato introdotto sin dall’inizio di questa attivita’, nel 1947, da una programmatrice che risali’ all’origine di un malfunzionamento del suo programma scoprendo che si trattava in effetti di un vero insetto che aveva bloccato uno dei rele’ del computer!  Ma sembra che i termini di bug e debugging fossero gia’ usati nella lingua inglese per indicare metaforicamente la soluzione di un problema eliminando in maniera sistematica le sue cause.

Come spiega molto bene Guttag, i bachi sono tutti errori introdotti dallo stesso programmatore all’atto della scrittura di un programma. In pratica e’ impossibile scrivere programmi senza bachi ed e’ necessario prevedere una sistematica ricerca di questi. In particolare l’esperienza insegna che e’ possibile scrivere in qualche ora un programma di centinaia di linee di codice. Debaggare lo stesso codice richiede invece giorni, settimane e nei casi piu’ disgraziati anche mesi. E alla fine non e’ sicuro che non ci siano altri bachi ancora non scoperti. Tenendo conto che ora i computer sono usati in condizioni critiche (ad esempio in un’auto che  viaggia ad alta velocita’)  questa attivita’ ha una grandissima importanza .

Commenti:

Altri applet di informatica

Il materiale ha come indirizzo http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-00sc-introduction-to-computer-science-and-programming-spring-2011/unit-1/lecture-7-debugging/ e fa parte della raccolta Introduction to Computer Science and Programming

Il suo autore e’ John Guttag

Titolo in inglese: Lesson 7: Debugging

Ricerca di pagine che hanno link a questo materiale .

Tweet

Leave a Reply

Your email address will not be published. Required fields are marked *