¿Qué es Refactoring?
La refactorización es la simplificación del código manteniendo su comportamiento.
Definición y origen de la palabra
La estructura interna se renueva sin alterar la apariencia externa. La legibilidad del código aumenta y resulta más fácil añadir nuevas funciones. Es un proceso de limpieza que salda la deuda técnica. Martin Fowler es el referente de esta disciplina.
¿Cómo saberlo y utilizarlo en la vida diaria?
Revisión: Rondas de revisión de código.
Pago de deuda: Limpieza intercalada dentro del sprint.
Adquisición: Simplificación antes de entrar en código antiguo.
Profundidad técnica y arquitectura
Movimientos comunes:
Extracción de funciones: Dividir un bloque largo en partes con nombre.
Renombrado: Un nombre que describa la intención.
Código muerto: Eliminar lo que no se utiliza.
Ejemplo:
# önce
def f(a):
return a*a*3.14
# sonra
def daire_alani(yaricap):
return yaricap * yaricap * 3.14Regla: Primero se escribe la prueba, luego se toca el código. Si no hay prueba, la primera tarea es crearla.
Cosas frecuentemente mezcladas
Se confunde con una característica o corrección de errores. Sin embargo, la salida no cambia, solo mejora la estructura interna. El comportamiento es el mismo, el código es diferente.
Uso en diferentes disciplinas
Fontanería: Renovar las tuberías mientras la pared sigue en pie.
Redacción: El tema es el mismo, la oración es fluida.
Poda: El árbol es el mismo, la disposición de las ramas es ordenada.
Preguntas y respuestas
¿Por qué lo hacemos?
El código limpio evita errores y ralentizaciones, y acelera el trabajo nuevo.
¿Cuándo se hace?
En el código que se toca, en pequeñas partes. La limpieza a gran escala se planifica por separado.
¿Cuál es el riesgo?
Tocar el código sin pruebas altera el comportamiento. No se debe intervenir sin la garantía de las pruebas.
¿Con qué frecuencia se hace?
Continuamente, en pequeñas dosis. Se entrelaza dentro del sprint, no se pospone.
Términos relacionados
Herramientas relacionadas
Esta explicación se redactó en lenguaje sencillo para TreScout con IA y se tradujo automáticamente del original en turco · prevalece la versión turca. Si algo le parece erróneo o incompleto, escriba a hello@trescout.com. Leer en turco →