mirror of
https://github.com/affaan-m/everything-claude-code.git
synced 2026-03-31 06:03:29 +08:00
49 lines
1.6 KiB
Markdown
49 lines
1.6 KiB
Markdown
# Estilo de Código
|
|
|
|
## Imutabilidade (CRÍTICO)
|
|
|
|
SEMPRE crie novos objetos, NUNCA modifique os existentes:
|
|
|
|
```
|
|
// Pseudocódigo
|
|
ERRADO: modificar(original, campo, valor) → altera o original in-place
|
|
CORRETO: atualizar(original, campo, valor) → retorna nova cópia com a alteração
|
|
```
|
|
|
|
Justificativa: Dados imutáveis previnem efeitos colaterais ocultos, facilita a depuração e permite concorrência segura.
|
|
|
|
## Organização de Arquivos
|
|
|
|
MUITOS ARQUIVOS PEQUENOS > POUCOS ARQUIVOS GRANDES:
|
|
- Alta coesão, baixo acoplamento
|
|
- 200-400 linhas típico, 800 máximo
|
|
- Extrair utilitários de módulos grandes
|
|
- Organizar por recurso/domínio, não por tipo
|
|
|
|
## Tratamento de Erros
|
|
|
|
SEMPRE trate erros de forma abrangente:
|
|
- Trate erros explicitamente em cada nível
|
|
- Forneça mensagens de erro amigáveis no código voltado para UI
|
|
- Registre contexto detalhado de erro no lado do servidor
|
|
- Nunca engula erros silenciosamente
|
|
|
|
## Validação de Entrada
|
|
|
|
SEMPRE valide nas fronteiras do sistema:
|
|
- Valide toda entrada do usuário antes de processar
|
|
- Use validação baseada em schema onde disponível
|
|
- Falhe rapidamente com mensagens de erro claras
|
|
- Nunca confie em dados externos (respostas de API, entrada do usuário, conteúdo de arquivo)
|
|
|
|
## Checklist de Qualidade de Código
|
|
|
|
Antes de marcar o trabalho como concluído:
|
|
- [ ] O código é legível e bem nomeado
|
|
- [ ] Funções são pequenas (< 50 linhas)
|
|
- [ ] Arquivos são focados (< 800 linhas)
|
|
- [ ] Sem aninhamento profundo (> 4 níveis)
|
|
- [ ] Tratamento adequado de erros
|
|
- [ ] Sem valores hardcoded (use constantes ou config)
|
|
- [ ] Sem mutação (padrões imutáveis usados)
|