Do Developers Read Type Information? An Eye-Tracking Study on TypeScript
Este estudo de rastreamento ocular envolvendo 26 estudantes de graduação revela que os desenvolvedores não olham diretamente para as anotações de tipo com mais frequência durante tarefas de compreensão de código ou localização de bugs em TypeScript, sugerindo que, embora os tipos possam servir como documentação, eles não são lidos ativamente da maneira previamente hipotetizada.
Artigo original sob licença CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Esta é uma explicação gerada por IA do artigo abaixo. Não foi escrita nem endossada pelos autores. Para precisão técnica, consulte o artigo original. Ler aviso legal completo
Imagine que você está lendo um livro de receitas. Algumas receitas têm pequenos post-its na lista de ingredientes dizendo "2 xícaras de farinha" ou "frango, sem osso". Esses post-its são como anotações de tipo em um código de computador. Eles dizem ao programador (o cozinheiro) exatamente que tipo de dado (ingrediente) está sendo usado.
Por anos, especialistas acreditaram que esses "post-its" atuam como um manual de instruções integrado. A teoria é que, quando um programador fica travado ou tenta entender uma receita, ele olha para essas notas para ajudá-lo.
A Grande Pergunta:
Os programadores realmente olham para essas notas quando estão lendo o código, ou eles apenas as ignoram?
Para descobrir, os pesquisadores deste artigo montaram um experimento de "cozinha". Eles não apenas perguntaram aos programadores o que eles achavam que faziam; eles usaram óculos de rastreamento ocular (como óculos de alta tecnologia que registram exatamente para onde seus olhos estão olhando) para observar 22 estudantes enquanto tentavam entender o código e encontrar erros nele.
Aqui está o que eles descobriram, dividido em conceitos simples:
1. O Fenômeno da "Nota Fantasma"
A Expectativa: Se os post-its forem úteis, as pessoas devem olhar para eles com frequência, especialmente quando estiverem confusas.
A Realidade: Os dados de rastreamento ocular mostraram que os programadores mal olharam para as anotações de tipo.
- A Analogia: É como ter um mapa com um adesivo vermelho brilhante escrito "Você está aqui", mas o motorista continua encarando a estrada e a tela do GPS, ignorando completamente o adesivo. Mesmo quando as notas estavam lá, os olhos dos programadores não demoravam neles mais do que quando as notas estavam ausentes.
- A Descoberta: A presença dessas notas não mudou a forma como os programadores leram o código. Eles não olharam para as notas com mais frequência, nem voltaram para relê-las quando ficaram travados.
2. O Teste de "Memória"
A Expectativa: Talvez as notas atuem como um auxílio de memória? Se um programador tem muitas coisas para lembrar (memória de trabalho alta), talvez ele use as notas menos porque consegue manter a informação em sua cabeça. Se ele tem dificuldade para lembrar, talvez dependa mais das notas.
A Realidade: Os pesquisadores testaram a memória dos estudantes (como pedir para lembrarem uma lista de letras enquanto fazem cálculos matemáticos).
- A Descoberta: Não importou muito o quão boa era a memória deles. Quer tivessem uma "super memória" ou uma "memória normal", eles ainda não olharam para as notas de tipo significativamente mais ou menos. As notas não pareceram atuar como uma muleta para sua memória da maneira que os pesquisadores esperavam.
3. O Fator "Depende da Receita"
A Descoberta: A maior coisa que mudou a forma como os programadores leram o código não foram as notas; foi o próprio código.
- A Analogia: Algumas receitas são simplesmente mais fáceis de ler do que outras. Se uma receita é bagunçada ou confusa, o cozinheiro passa mais tempo encarando-a. Se for clara, ele passa rapidamente por ela. Os pesquisadores descobriram que a peça específica de código importava muito mais do que se havia "post-its" nela. Alguns códigos eram apenas mais difíceis de entender, independentemente das anotações.
4. O Paradoxo do "Eu Amo Notas"
A Reviravolta: Após o experimento, os pesquisadores perguntaram aos estudantes: "Vocês gostam desses post-its?"
- O Resultado: Os estudantes disseram SIM! Eles afirmaram enfaticamente que as anotações de tipo são úteis para escrever código e para compreendê-lo. Eles acham que são úteis.
- O Paradoxo: Esta é a parte confusa. Os estudantes dizem que as notas são ótimas, mas seus olhos provam que eles não as leem. É como dizer: "Eu amo ler o rótulo nutricional", mas nunca olhar para ele ao comprar o cereal.
O Que Isso Significa?
O artigo conclui que, embora os programadores acreditem que as anotações de tipo sejam como uma documentação útil dentro do código, eles não as leem da maneira que esperaríamos. Eles não as encaram e não voltam a elas quando ficam travados.
Quem deve se importar?
- Construtores de Ferramentas: Se os programadores não estão olhando para as notas, talvez as ferramentas (como os editores de software que eles usam) precisem mostrar essa informação de uma forma diferente, mais óbvia, em vez de apenas imprimi-la na tela.
- Professores: Se os alunos não estão lendo as notas, os professores podem precisar ensinar como ler e usar essa informação, em vez de apenas assumir que eles a aprenderão naturalmente.
- A Comunidade: Isso sugere que apenas adicionar essas notas ao código não é uma solução máica para a compreensão; as notas precisam ser usadas de uma forma específica que ainda não descobrimos totalmente.
Em resumo: Programadores amam a ideia das anotações de tipo, mas, na prática, seus olhos contam uma história diferente: eles estão, em grande parte, ignorando-as.
Afogado em artigos na sua área?
Receba digests diários dos artigos mais recentes que correspondam às suas palavras-chave de pesquisa — com resumos técnicos, no seu idioma.