Middle+
¿En qué te fijas cuando realizas una revisión de código?
sobes.tech AI
Respuesta de la IA
- Conformidad con el estilo de código del proyecto
- Facilidad de lectura y comprensión del código
- Ausencia de duplicación de código (DRY)
- Uso correcto de patrones arquitectónicos y principios de diseño (SOLID)
- Manejo de errores y casos límite
- Ausencia de fugas de memoria (ciclos de referencias fuertes, objetos no gestionados)
- Uso de estructuras de datos y algoritmos adecuados para resolver la tarea
- Presencia de comentarios y su actualidad
- Existencia y cobertura de pruebas unitarias
- Optimización del rendimiento (si aplica)
- Atomicidad y legibilidad de los commits
- Conformidad de la implementación con la tarea y los requisitos
// Ejemplo de verificación de ausencia de fugas de memoria
class Parent {
var child: Child?
}
class Child {
weak var parent: Parent? // Uso de weak para evitar ciclos fuertes
}
// Ejemplo de verificación de DRY
func computeSum(_ a: Int, _ b: Int) -> Int {
// Lógica común
return a + b
}
func processNumbers(_ x: Int, _ y: Int) {
let result = computeSum(x, y)
// Procesamiento adicional
print(result)
}
func handleValues(_ p: Int, _ q: Int) {
let result = computeSum(p, q) // Reutilización de computeSum
// Procesamiento adicional
print(result * 2)
}
| Aspecto | Lo que verifico |
|---|---|
| Legibilidad | Nombres de variables, funciones, clases; sangrías |
| Correctitud | Lógica, manejo de errores, casos límite |
| Rendimiento | Bucles, cálculos complejos, trabajo con colecciones |
| Pruebas | Existencia y calidad de las pruebas |
| Arquitectura/Diseño | Conformidad con patrones y principios |