Do Developers Read Type Information? An Eye-Tracking Study on TypeScript
Questo studio di eye-tracking che coinvolge 26 studenti universitari rivela che gli sviluppatori non guardano direttamente le annotazioni di tipo con maggiore frequenza durante i compiti di comprensione del codice o di localizzazione dei bug in TypeScript, suggerendo che, sebbene i tipi possano servire come documentazione, essi non vengono letti attivamente nel modo precedentemente ipotizzato.
Articolo originale sotto licenza CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Questa è una spiegazione generata dall'IA dell'articolo qui sotto. Non è stata scritta né approvata dagli autori. Per precisione tecnica, consulta l'articolo originale. Leggi il disclaimer completo
Immagina di leggere un libro di cucina. Alcune ricette hanno dei piccoli post-it accanto alla lista degli ingredienti con scritto "2 tazze di farina" o "pollo, senza ossa". Questi appunti sono come le annotazioni di tipo nel codice informatico. Dicono al programmatore (il cuoco) esattamente che tipo di dato (ingrediente) si sta utilizzando.
Per anni, gli esperti hanno creduto che questi "post-it" agiscano come un manuale di istruzioni integrato. La teoria è che quando un programmatore si blocca o cerca di capire una ricetta, guardi questi appunti per aiutarsi.
La Grande Domanda:
I programmatori guardano davvero questi appunti quando leggono il codice, o li ignorano semplicemente?
Per scoprirlo, i ricercatori in questo articolo hanno allestito un esperimento in una "cucina". Non si sono limitati a chiedere ai programmatori cosa pensavano di fare; hanno usato occhiali per l'eye-tracking (come occhiali tecnologici che registrano esattamente dove si posano i tuoi occhi) per osservare 22 studenti mentre cercavano di comprendere del codice e trovare dei bug al suo interno.
Ecco cosa hanno scoperto, suddiviso in concetti semplici:
1. Il Fenomeno del "Post-it Fantasma"
L'Aspettativa: Se i post-it sono utili, le persone dovrebbero guardarli spesso, specialmente quando sono confuse.
La Realtà: I dati dell'eye-tracking hanno mostrato che i programmatori guardano appena le annotazioni di tipo.
- L'Analogia: È come avere una mappa con un adesivo rosso brillante che dice "Voi siete qui", ma l'autista continua a fissare la strada e lo schermo del GPS, ignorando completamente l'adesivo. Anche quando gli appunti erano presenti, gli occhi dei programmatori non si soffermavano su di essi più di quanto non facessero quando gli appunti mancavano.
- Il Risultato: La presenza di questi appunti non ha cambiato il modo in cui i programmatori leggevano il codice. Non guardavano gli appunti più spesso e non tornavano a rileggerli quando incontravano difficoltà.
2. Il Test della "Memoria"
L'Aspettativa: Forse gli appunti fungono da aiuto per la memoria? Se un programmatore ha molte cose da ricordare (memoria di lavoro elevata), forse usa meno gli appunti perché può tenere le informazioni nella testa. Se ha difficoltà a ricordare, forse si affida di più agli appunti.
La Realtà: I ricercatori hanno testato la memoria degli studenti (come chiedere di ricordare una lista di lettere mentre si fanno calcoli matematici).
- Il Risultato: Non importava molto quanto fosse buona la loro memoria. Che avessero una "super memoria" o una "memoria normale", non guardavano comunque gli appunti di tipo in modo significativamente maggiore o minore. Gli appunti non sembravano agire come un supporto per la loro memoria nel modo in cui i ricercatori speravano.
3. Il Fattore "Dipende dalla Ricetta"
Il Risultato: La cosa che ha cambiato maggiormente il modo in cui i programmatori leggevano il codice non erano gli appunti; era il codice stesso.
- L'Analogia: Alcune ricette sono semplicemente più facili da leggere di altre. Se una ricetta è disordinata o confusa, il cuoco la fissa per molto tempo. Se è chiara, la legge velocemente. I ricercatori hanno scoperto che il pezzo specifico di codice contava molto di più rispetto alla presenza di "post-it". Alcuni codici erano semplicemente più difficili da capire, indipendentemente dalle annotazioni.
4. Il Paradosso dell' "Amo i Post-it"
Il Colpo di Scena: Dopo l'esperimento, i ricercatori hanno chiesto agli studenti: "Vi piacciono questi post-it?".
- Il Risultato: Gli studenti hanno detto SÌ! Hanno affermato in modo schiacciante che le annotazioni di tipo sono utili per scrivere codice e per capirlo. Pensano che siano utili.
- Il Paradosso: Questa è la parte confusa. Gli studenti dicono che i post-it sono fantastici, ma i loro occhi dimostrano che non li guardano. È come dire: "Adoro leggere l'etichetta nutrizionale", ma poi non guardarla mai quando si compra il cereale.
Cosa Significa Questo?
L'articolo conclude che, sebbene i programmatori ritengano che le annotazioni di tipo siano come una documentazione integrata nel codice, non le leggono effettivamente nel modo in cui ci si aspetterebbe. Non le fissano e non vi tornano sopra quando si bloccano.
Chi dovrebbe preoccuparsene?
- Costruttori di Strumenti: Se i programmatori non guardano gli appunti, forse gli strumenti (come gli editor di software che utilizzano) devono mostrare queste informazioni in modo diverso, più evidente, invece di limitarsi a stamparle sullo schermo.
- Insegnanti: Se gli studenti non leggono gli appunti, gli insegnanti potrebbero dover insegnare loro come leggere e usare queste informazioni, invece di dare per scontato che le apprenderanno naturalmente.
- La Comunità: Ciò suggerisce che aggiungere semplicemente questi appunti al codice non è una soluzione magica per la comprensione; gli appunti devono essere usati in un modo specifico che non abbiamo ancora del tutto compreso.
In breve: I programmatori amano l'idea delle annotazioni di tipo, ma nella pratica, i loro occhi raccontano una storia diversa: li stanno quasi del tutto ignorando.
Sommerso dagli articoli nel tuo campo?
Ricevi digest giornalieri degli articoli più recenti corrispondenti alle tue parole chiave di ricerca — con riassunti tecnici, nella tua lingua.