Explique código desconhecido antes de alterá-lo
Entrar em um módulo legado, uma dependência de terceiros ou um pull request de um colega significa ler código sem nenhum contexto na cabeça. Hoje os desenvolvedores colam a função ou o arquivo em um modelo e perguntam o que ele faz e por quê — buscar respostas (54%) e entender uma base de código (33%) estão entre as tarefas de IA mais comuns na pesquisa da Stack Overflow. É uma prática de baixo risco, porque você está lendo, não publicando.
Você é um engenheiro sênior me ajudando a entender um código que eu não escrevi. Vou colar um trecho; explique-o para que eu possa modificá-lo com segurança. Linguagem/framework: {{language}} Onde isso se encaixa no sistema: {{context}} Código: {{code}} Percorra: 1. Resumo — o que esse código faz, em duas frases. 2. Bloco por bloco — o propósito de cada seção relevante, incluindo quaisquer recursos ou idiomas da linguagem que não sejam óbvios. 3. Entradas, saídas e efeitos colaterais — o que ele lê, retorna, modifica ou chama externamente. 4. Suposições e casos extremos — o que precisa ser verdade para funcionar, e onde ele quebraria. 5. Perguntas a verificar — qualquer coisa que você esteja inferindo em vez de ter certeza. Regras: - Baseie cada afirmação no código que colei. Se o comportamento depender de código, configuração ou tipos que não incluí, diga que depende de algo não mostrado, em vez de adivinhar. - Não invente nomes de funções, bibliotecas ou comportamentos que não estejam visíveis no trecho. Sinalize qualquer coisa ambígua em vez de resolvê-la silenciosamente. - Prefira linguagem simples a jargão; quando um termo for inevitável, defina-o uma vez.
Preencha seus dados e o prompt se atualiza na hora — depois é só copiar.
Resumo: essa função aplica debounce às chamadas de search(), fazendo com que ela só dispare 300 ms depois que o usuário para de digitar, cancelando qualquer chamada pendente. Bloco por bloco: mantém um id de timer em um closure; cada chamada limpa o timer anterior e agenda um novo, repassando seus argumentos via ...args quando o timer dispara. Efeitos colaterais: define e limpa um timer; chama search() apenas com os argumentos mais recentes. Suposições: depende de uma única variável de timer compartilhada no escopo envolvente. Como search trata erros depende de código não mostrado. Perguntas a verificar: search é assíncrona? Se for, resoluções sobrepostas não são tratadas aqui.
O fluxo de trabalho completo
- Cole apenas código que você tem permissão para compartilhar; remova segredos, chaves e identificadores internos antes
- Dê ao modelo o contexto ao redor (framework, onde o código roda) para que a explicação seja precisa
- Compare a explicação com o código e resolva você mesmo cada sinalização de "não mostrado" ou ambíguo
- Confirme seu entendimento executando o código ou percorrendo-o passo a passo antes de alterá-lo
Fique de olho
Nunca cole código-fonte proprietário, credenciais, chaves de API ou dados de clientes em uma conta de IA de consumo — o conteúdo pode ser retido e usado para treinar o modelo. A Samsung baniu o ChatGPT de consumo em 2023 depois que funcionários vazaram código interno, e pesquisas mostram que a maioria dos funcionários ainda cola dados da empresa nessas ferramentas. Use um plano empresarial com treinamento desativado, ou compartilhe apenas trechos não sensíveis.
O modelo explica o código com confiança mesmo quando está adivinhando partes que você não mostrou. Trate qualquer comportamento que dependa de código, configuração ou tipos não mostrados como não verificado até que você mesmo confira.
Uma explicação não é um teste. Confirme o comportamento executando o código ou percorrendo-o passo a passo, não confiando apenas no resumo.
De onde isso vem
Cada caso de uso deste site se baseia em relatos reais que os desenvolvedores de software em atividade compartilham — nada foi inventado por nós.
Mais casos de uso de IA para os desenvolvedores de software
Uma primeira revisão do seu próprio diff antes que humanos o vejam
automaçãoGere testes unitários e depois verifique-os em relação à especificação
análiseDepuração "pato de borracha" para um problema que você não consegue resolver
redaçãoTransforme uma decisão em um ADR ou na documentação que você deixou de escrever
comunicaçãoRedija mensagens de commit e descrições de PR a partir do seu diff
← Todos os 6 casos de uso: como os desenvolvedores de software usam a IA