Sobes.tech
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)
    }
}