~/VibeHandbook
PDF grátis

Capítulo 15 · 03

Verificação de tipos e linting: erros pegos de graça

Duas ferramentas capturam categorias inteiras de erros com quase nenhum esforço da sua parte:

  • Verificação de tipos (TypeScript, mypy, etc.) captura "você passou uma string onde era esperado um número" e "esse valor pode ser undefined". A IA adora esquecer casos extremos que os tipos tornam impossíveis.
  • Linting (ESLint, Ruff, etc.) captura variáveis não usadas, código inalcançável e desvio de estilo. Isso mantém um código tocado por IA de virar lentamente uma bagunça.

Configure essas ferramentas cedo e diga à IA para obedecê-las: "Run the type checker and the linter, and fix anything they report before you call this done." Trate uma verificação de tipos limpa como parte da definição de "terminado".

Fique atento às saídas fáceis e preguiçosas, no entanto. Quando a verificação de tipos reclama, a correção genuinamente certa é lidar com o caso que ela encontrou — o valor undefined, o tipo errado. A correção rápida é silenciar a reclamação com // @ts-ignore, any, ou um comentário # type: ignore, e a IA recorre a isso constantemente porque faz o texto vermelho desaparecer. Isso também torna a verificação inútil exatamente onde ela estava tentando ajudar. Se você ver um comentário de supressão aparecer em um diff, trate-o como uma pergunta, não como uma solução: "Why is this needed? Fix the underlying type instead of ignoring it."

Quer offline?

Baixe o livro inteiro em PDF ou EPUB — grátis.