Una papera di gomma usata in fase di debug

Nell'ingegneria del software, viene indicata come rubber duck debugging o rubber ducking una pratica di debugging che consiste nello spiegare, riga per riga, il funzionamento di un programma a un oggetto inanimato (come appunto una papera di gomma). L'idea infatti è che, descrivendo dettagliatamente il funzionamento atteso del programma e osservando allo stesso tempo quello che effettivamente il codice fa, eventuali incongruenze possano venire a galla.

Il nome è un riferimento a una storia contenuta nel libro The Pragmatic Programmer, nella quale un programmatore porta con sé una paperella di gomma, alla quale spiega riga per riga il funzionamento del codice,[1] ma la tecnica è nota anche sotto diversi nomi, che tipicamente si riferiscono ad altri oggetti inanimati.

Molti programmatori hanno avuto l'esperienza di trovare la soluzione a un problema spiegando lo stesso a un'altra persona, specialmente se questa non si intende di informatica. In generale, spiegare un argomento porta a osservare lo stesso da un differente punto di vista, che può condurre a una comprensione più profonda.[2] L'uso di oggetti inanimati elimina il problema di dover coinvolgere un'altra persona nel processo.

Note

modifica
  1. ^ The Pragmatic Programmer: From Journeyman to Master, Addison Wesley, ISBN 978-0-201-61622-4. URL consultato il 4 maggio 2019 (archiviato dall'url originale il 27 settembre 2015). p. 95, footnote.
  2. ^ David Hayes, The Psychology Underlying the Power of Rubber Duck Debugging, su Press Up, 25 giugno 2014. URL consultato il 3 luglio 2015 (archiviato dall'url originale il 6 luglio 2015).

Altri progetti

modifica

Collegamenti esterni

modifica
  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica

📚 Artikel Terkait di Wikipedia

Programmatore

suggerimenti del progetto di riferimento. Un programmatore (in inglese programmer o coder, "scrittore di codice") è un tecnico del settore informatico.

Applicazione (informatica)

Una applicazione, in informatica, è un software (installato oppure erogato in SaaS) o una serie di software, in fase di esecuzione, che ha lo scopo e

Linus Torvalds

agosto 2021. ^ (EN) Linus Benedict Torvalds. By giving away his software, the Finnish programmer earned a place in history Archiviato il 30 settembre 2009 in

The Pragmatic Programmer

The Pragmatic Programmer è un libro scritto da Andrew Hunt e David Thomas, edito nell'ottobre del 1999 e primo di una collana intitolata The Pragmatic

Don't repeat yourself

e sviluppo software secondo cui andrebbe evitata ogni forma di ripetizione e ridondanza logica nell'implementazione di un sistema software. Il principio

GitHub Copilot

GitHub Copilot · Your AI pair programmer, su copilot.github.com. ^ (EN) Introducing GitHub Copilot: your AI pair programmer, su github.blog, 29 giugno 2021

Margaret Hamilton (scienziata)

statunitense. È stata la direttrice del Software Engineering Division del MIT Instrumentation Laboratory, che sviluppò il software di bordo per il programma Apollo

Brendan Eich

ruolo in Brave. ^ (EN) Steve Lohr, Part Artist, Part Hacker And Full-Time Programmer, in The New York Times, 9 settembre 1996. URL consultato il 15 giugno