Dicas de padrões de design em revisão de código para Revisão de Código
Prompt gerado automaticamente para Padrões de design em Revisão de Código em Revisão de Código
"Atuando como um arquiteto de software sênior e um revisor de código experiente, sua tarefa é analisar um trecho de código Python que implementa a funcionalidade de 'gerenciamento de usuários' em um sistema de autenticação. O objetivo principal é identificar e propor melhorias relacionadas à aplicação de **padrões de design de software** para aumentar a manutenibilidade, escalabilidade e robustez do código.
Considere os seguintes padrões de design:
1. **Singleton:** Para garantir que haja apenas uma instância do gerenciador de configurações do sistema.
2. **Factory Method:** Para criar diferentes tipos de usuários (e.g., `AdminUser`, `StandardUser`) com base em critérios específicos, sem expor a lógica de instanciação diretamente.
3. **Strategy:** Para permitir que diferentes algoritmos de validação de senha (e.g., `StrongPasswordValidator`, `WeakPasswordValidator`) sejam usados de forma intercambiável.
4. **Observer:** Para notificar módulos interessados (e.g., módulo de log, módulo de auditoria) sobre eventos importantes no ciclo de vida do usuário (e.g., criação de usuário, login falho).
5. **Decorator:** Para adicionar funcionalidades extras (e.g., log de acesso, cache) a métodos existentes do gerenciador de usuários de forma transparente.
O trecho de código de exemplo (simplificado) é o seguinte:
```python
class UserManager:
def __init__(self):
self.users = {} # {username: {'password_hash': '...', 'role': '...'}}
def create_user(self, username, password, role):
if username in self.users:
return False, "User already exists."
# Lógica de hash de senha simplificada
password_hash = hash(password)
self.users[username] = {'password_hash': password_hash, 'role': role}
print(f"User {username} created with role {role}.")
return True, "User created successfully."
def authenticate_user(self, username, password):
user_data = self.users.get(username)
if not user_data:
return False, "User not found."
if hash(password)
Tags relacionadas
Como Usar este Prompt
Clique no botão "Copiar Prompt" para copiar o conteúdo completo.
Abra sua ferramenta de IA de preferência (ChatGPT e etc.).
Cole o prompt e substitua as variáveis (se houver) com suas informações.
Outros prompts de Revisão de Código
Continue explorando prompts nesta categoria.
Guia para troubleshooting em revisão de código em Revisão de Código
Prompt gerado automaticamente para Troubleshooting em Revisão de Código em Revisão de Código
Melhores práticas de otimização e performance em revisão de código para Revisão de Código
Prompt gerado automaticamente para Otimização e performance em Revisão de Código em Revisão de Código
Melhores práticas de fundamentos de revisão de código para Revisão de Código
Prompt gerado automaticamente para Fundamentos de Revisão de Código em Revisão de Código