Junior
O que é o princípio DRY e quais os aspetos que inclui?
sobes.tech IA
Resposta da IA
O princípio DRY (Don't Repeat Yourself) significa não te repitares. É um princípio fundamental do desenvolvimento de software que visa reduzir a redundância de código e dados. Cumprir este princípio melhora a manutenção, legibilidade e reduz a probabilidade de erros.
Aspectos do princípio DRY:
- Evitar a duplicação de código: Os blocos de código repetidos são colocados em funções, classes, módulos.
# Mau: def process_user_data(user): print(f"Processando dados para o utilizador: {user['name']}") # Muitos passos de processamento print("Processamento de dados terminado.") def process_order_data(order): print(f"Processando dados para a encomenda: {order['id']}") # Muitos passos de processamento (semelhantes aos dados do utilizador) print("Processamento de dados terminado.") # Bom: def process_data(item_type, item_id): print(f"Processando dados para {item_type}: {item_id}") # Passos de processamento partilhados print("Processamento de dados terminado.") process_data("user", user['name']) process_data("order", order['id']) - Evitar a duplicação de dados: A mesma informação é armazenada num só lugar (por exemplo, parâmetros de configuração, constantes).
// Mau: { "api_url_users": "https://api.example.com/users", "api_url_orders": "https://api.example.com/orders" } // Bom: { "base_api_url": "https://api.example.com", "endpoints": { "users": "/users", "orders": "/orders" } } - Evitar a duplicação de lógica de negócio: As regras e algoritmos são implementados uma única vez.
// Mau: // Validação em múltiplos locais if (orderAmount < 0) { throw new InvalidOrderException("O montante não pode ser negativo."); } // Verificação semelhante noutra função // Bom: // Lógica de validação centralizada public void validateOrderAmount(double amount) { if (amount < 0) { throw new InvalidOrderException("O montante não pode ser negativo."); } } - Evitar a duplicação de configuração: As configurações da aplicação são colocadas em ficheiros de configuração ou armazéns centralizados.
- Evitar a duplicação na documentação: A informação é estruturada e faz referência a uma fonte única.
Seguir o princípio DRY leva a sistemas mais modulares, fáceis de ler e escalar, o que é fundamental para QA, pois simplifica testes e a localização de defeitos.