Sobes.tech
Middle

Nombra criterios específicos de calidad del código.

sobes.tech AI

Respuesta de la IA

  • Legibilidad: Es fácil entender qué hace el código. Se utilizan nombres significativos, se siguen las convenciones de formato.
  • Mantenibilidad: El código es fácil de modificar y corregir errores sin introducir cambios nuevos. Estructura modular, baja acoplamiento.
  • Testabilidad: El código se puede cubrir fácilmente con pruebas automáticas. Las funciones y clases tienen responsabilidades claramente definidas.
  • Rendimiento: El código utiliza los recursos (procesador, memoria, batería) de manera eficiente. No hay "cuellos de botella".
  • Fiabilidad: El código funciona de manera predecible y es resistente a errores. Manejo de excepciones, validación de datos de entrada.
  • Reutilización: Los componentes del código pueden ser utilizados en otras partes de la aplicación o en otros proyectos. Cumplimiento de los principios SOLID.
  • Cumplimiento de estándares de codificación: El código cumple con los estándares aceptados en el equipo o la industria.
  • Documentación: El código (o API) está adecuadamente descrito, si es necesario.

Ejemplos:

// Código legible:
public void processUserData(User user) {
    if (user.isActive()) {
        // Procesamiento de usuario activo
    } else {
        // Procesamiento de usuario inactivo
    }
}

// Código menos legible:
public void procUsr(User u) {
    if (u.getStat()) { // ¿Qué es getStat()?
        // código
    } else {
        // código
    }
}
// Código testeable:
class UserRepository(private val apiService: ApiService) {
    fun getUserById(userId: String): User? {
        return apiService.fetchUser(userId) // La dependencia se puede simular fácilmente para pruebas
    }
}

// Código menos testeable (creación directa de dependencia dentro de la función):
class UserRepository {
    fun getUserById(userId: String): User? {
        val apiService = ApiService() // Difícil de simular
        return apiService.fetchUser(userId)
    }
}