161 lines
2.5 KiB
Markdown
161 lines
2.5 KiB
Markdown
# AI Code Generation Guidelines
|
|
|
|
## Princípios Fundamentais
|
|
|
|
Você deve priorizar:
|
|
|
|
- Simplicidade
|
|
- Reutilização
|
|
- Clareza
|
|
- Manutenibilidade
|
|
- Aderência ao projeto existente
|
|
|
|
Evite complexidade desnecessária.
|
|
|
|
---
|
|
|
|
## 1. Evitar Overengineering
|
|
|
|
Antes de implementar qualquer solução, verifique:
|
|
|
|
- Existe uma forma mais simples?
|
|
- Esta solução resolve apenas o problema atual?
|
|
- Estou adicionando abstrações desnecessárias?
|
|
|
|
Regras:
|
|
|
|
- NÃO crie abstrações "para o futuro"
|
|
- NÃO use padrões complexos sem necessidade clara
|
|
- Prefira soluções diretas e legíveis
|
|
|
|
---
|
|
|
|
## 2. Não Reinventar a Roda
|
|
|
|
Antes de implementar algo novo:
|
|
|
|
Verifique, nesta ordem:
|
|
|
|
1. Código existente no projeto
|
|
2. Bibliotecas já instaladas no projeto
|
|
3. Bibliotecas populares e consolidadas
|
|
4. Recursos nativos da linguagem
|
|
|
|
Regras:
|
|
|
|
- Prefira bibliotecas consolidadas
|
|
- NÃO reimplemente funcionalidades comuns
|
|
- Use soluções padrão da comunidade
|
|
|
|
---
|
|
|
|
## 3. Consultar Documentação
|
|
|
|
Antes de usar qualquer biblioteca, framework ou API:
|
|
|
|
- Consulte a documentação oficial
|
|
- Use a forma recomendada
|
|
- Evite hacks e workarounds
|
|
|
|
Se não souber algo:
|
|
|
|
- NÃO invente
|
|
- Admita que não sabe
|
|
- Peça mais informações
|
|
|
|
---
|
|
|
|
## 4. Não Duplicar Código
|
|
|
|
Antes de escrever uma função:
|
|
|
|
Verifique:
|
|
|
|
- Já existe algo similar?
|
|
- Pode ser reutilizado?
|
|
- Pode ser refatorado?
|
|
|
|
Regras:
|
|
|
|
- NÃO copie e cole código
|
|
- Reutilize funções existentes
|
|
- Extraia código comum para funções reutilizáveis
|
|
|
|
---
|
|
|
|
## 5. Separação de Responsabilidades
|
|
|
|
Não coloque tudo em um único arquivo.
|
|
|
|
Organize por responsabilidade:
|
|
|
|
Exemplo:
|
|
|
|
- controllers/
|
|
- services/
|
|
- repositories/
|
|
- utils/
|
|
- models/
|
|
|
|
Regras:
|
|
|
|
- Uma função deve ter uma única responsabilidade
|
|
- Um arquivo deve ter um propósito claro
|
|
- Evite arquivos grandes demais
|
|
|
|
---
|
|
|
|
## 6. Seguir o Padrão do Projeto
|
|
|
|
Antes de criar código novo:
|
|
|
|
Analise:
|
|
|
|
- Estrutura de pastas
|
|
- Convenções de nomes
|
|
- Estilo do código
|
|
- Arquitetura existente
|
|
|
|
Regras:
|
|
|
|
- Siga o padrão existente
|
|
- NÃO introduza novos padrões sem necessidade
|
|
|
|
---
|
|
|
|
## 7. Código Legível
|
|
|
|
Priorize:
|
|
|
|
- Nomes claros
|
|
- Código simples
|
|
- Facilidade de entendimento
|
|
|
|
Evite:
|
|
|
|
- Código "inteligente demais"
|
|
- Truques desnecessários
|
|
|
|
---
|
|
|
|
## 8. Pensamento Crítico Obrigatório
|
|
|
|
Antes de gerar código, você deve se perguntar:
|
|
|
|
- Isso já existe?
|
|
- Isso é a forma mais simples?
|
|
- Isso é consistente com o projeto?
|
|
- Isso é necessário?
|
|
|
|
Se a resposta for não clara, investigue antes.
|
|
|
|
---
|
|
|
|
## 9. Em Caso de Dúvida
|
|
|
|
Pare e pergunte.
|
|
|
|
Não assuma.
|
|
Não invente.
|
|
Não improvise.
|