Middle
Nome critérios específicos de qualidade do código.
sobes.tech IA
Resposta da IA
- Legibilidade: É fácil entender o que o código faz. São utilizados nomes significativos, seguidas as convenções de formatação.
- Manutenção: O código é fácil de modificar e corrigir erros sem introduzir mudanças novas. Estrutura modular, baixo acoplamento.
- Testabilidade: O código pode ser facilmente coberto por testes automáticos. Funções e classes têm responsabilidades claramente definidas.
- Desempenho: O código utiliza os recursos (processador, memória, bateria) de forma eficiente. Ausência de "gargalos".
- Confiabilidade: O código funciona de forma previsível e é resistente a erros. Tratamento de exceções, validação de dados de entrada.
- Reutilização: Os componentes do código podem ser utilizados em outras partes da aplicação ou em outros projetos. Cumprimento dos princípios SOLID.
- Conformidade com padrões de codificação: O código está de acordo com os padrões aceitos na equipe ou na indústria.
- Documentação: O código (ou API) está adequadamente descrito, se necessário.
Exemplos:
// Código legível:
public void processUserData(User user) {
if (user.isActive()) {
// Processamento de usuário ativo
} else {
// Processamento de usuário inativo
}
}
// Código menos legível:
public void procUsr(User u) {
if (u.getStat()) { // O que é getStat()?
// código
} else {
// código
}
}
// Código testável:
class UserRepository(private val apiService: ApiService) {
fun getUserById(userId: String): User? {
return apiService.fetchUser(userId) // A dependência pode ser facilmente mockada para testes
}
}
// Código menos testável (criação direta de dependência dentro da função):
class UserRepository {
fun getUserById(userId: String): User? {
val apiService = ApiService() // Difícil de mockar
return apiService.fetchUser(userId)
}
}