Curso – Claude

Plantilla de plan de refactorización

Utilice esta plantilla para documentar y hacer un seguimiento de su esfuerzo de refactorización.


Información del proyecto

Campo Valor
Project/Module [Nombre del proyecto]
Archivos de destino [Lista de archivos a refactorizar]
Fecha de creación [Fecha]
Autor [Nombre]
Situación Proyecto / En revisión / Aprobado / En curso / Finalizado

Resumen

Objetivos

  • [ ] [Objetivo primordial: por ejemplo, mejorar la legibilidad del procesamiento de pagos]
  • [ ] [Objetivo secundario: por ejemplo, reducir la duplicación de códigos]
  • [ ] [Objetivo: por ejemplo, mejorar la testeabilidad]

Limitaciones

  • [ ] [Análisis 1: por ejemplo, no se puede cambiar la API pública]
  • [ ] [Conjunto 2: por ejemplo, Debe mantener la compatibilidad hacia atrás]
  • [ ] [Conjunto 3: por ejemplo, sin cambios en el esquema de la base de datos]

Nivel de riesgo

  • [ ] Baja - Cambios menores, código bien probado
  • [ ] Media - Cambios moderados, algunos riesgos
  • [ ] Alto - Cambios significativos, se necesita atención cuidadosa

Lista de verificación previa a la refactorización

Evaluación de la cobertura del ensayo

Métrico Corriente Objetivo Situación
Cobertura de prueba por unidad __% ≥80%
Pruebas de integración Yes/No Sí.
Todos los ensayos que pasan Yes/No Sí.

Requerido antes de comenzar

  • [ ] Todas las pruebas que pasan
  • [ ] Código revisado y entendido
  • [ ] Control de copia de seguridad/versión en marcha
  • [ ] Aprobación de usuario obtenida

El código identificado huele mal

Resumen

# Huele. Zona Severidad Prioridad
1 [por ejemplo, método largo] [archivo:línea] Alta P1
2 [por ejemplo, Código duplicado] [archivo:línea] Medio P2
3 [por ejemplo, "Envidia de las características"] [archivo:línea] Baja P3

Análisis detallado

Olor #1: [Nombre]

Zona: path/to/file.js:45-120

Descripción[Descripción detallada del problema]

Impacto[Impacto 1] - [Impacto 2]

Solución propuesta: [ Breve descripción de cómo arreglar]


Fases de refactorización

Fase A: Ganancias rápidas (bajo riesgo)

Objetivo: Mejoras simples con valor inmediato

Cambios estimados: [archivos X, métodos Y]

Se requiere la aprobación del usuario: Sí / No

# Tarea Archivo Refactorización Situación
A1 Cambiar nombre de variable x a userCount utils.js:15 Cambiar el nombre de la variable [ ]
A2 Eliminar no utilizado oldHandler() api.js:89 Eliminar código muerto [ ]
A3 Extracción de validación duplicada form.js:23,67 Método de extracción [ ]

Plan de reversión: Revertir confirma A1-A3


Fase B: Mejoras estructurales (riesgo medio)

Objetivo: Mejorar la organización y claridad del código

Cambios estimados: [archivos X, métodos Y]

Se requiere la aprobación del usuario: Sí

Dependencias: La fase A debe estar completa

# Tarea Archivo Refactorización Situación
B1 Extracto calculatePrice() del método largo order.js:45 Método de extracción [ ]
B2 Introducir OrderDetails objeto parámetro order.js:12 Introducir el objeto del parámetro [ ]
B3 Mover formatAddress() a clase de dirección customer.js:78 Mover método [ ]

Plan de reversión: Volver a la confirmación posterior a la fase A


Fase C: Cambios arquitectónicos (riesgo más alto)

Objetivo: Abordar cuestiones estructurales más profundas

Cambios estimados: [archivos X, métodos Y]

Se requiere la aprobación del usuario: Sí

Dependencias: Las fases A y B deben estar completas

# Tarea Archivo Refactorización Situación
C1 Reemplazar el cambio de precio con polimorfismo pricing.js:30 Reemplazar condicional con polimorfismo [ ]
C2 Extracto NotificationService clase user.js:100 Clase de extracción [ ]

Plan de reversión: Revertir a la confirmación posterior a la fase B


Pasos de refactorización detallados

Tarea [ID]: [Nombre de la tarea]

Olor dirigido: [Nombre olfativo]

Técnica de refactorización: [Nombre técnico]

Nivel de riesgo: Bajo / Medio / Alto

Contexto

Antes (Estado actual):

// Paste current code here

Después (Estado previsto):

// Paste expected code here

Mecánica paso a paso

  1. [ ] Medida 1: [Descripción]
  2. Prueba: Ejecutar pruebas después de este paso
  3. Se espera: Todos los ensayos pasan

  4. [ ] Medida 2: [Descripción]

  5. Prueba: Ejecutar pruebas después de este paso
  6. Se espera: Todos los ensayos pasan

  7. [ ] Medida 3: [Descripción]

  8. Prueba: Ejecutar pruebas después de este paso
  9. Se espera: Todos los ensayos pasan

Verificación

  • [ ] Todas las pruebas que pasan
  • [ ] Comportamiento sin cambios
  • [ ] Compilaciones de código
  • [ ] No hay nuevas advertencias

Enviar mensaje

refactor: [Describe the refactoring]

Seguimiento de los progresos

Estado de la fase

Fase Situación Iniciado Terminado Pruebas que pasan
A No comenzado / En curso / Hecho
B No comenzado / En curso / Hecho
C No comenzado / En curso / Hecho

Cuestiones que se han abordado

# Cuestión Resolución Situación
1 [Descripción] [Cómo resuelto] Abierto / resuelto

Comparación métrica

Antes de refactorizar

Métrico Archivo 1 Archivo 2 Total
Líneas de código
Complejidad ciclomática
Índice de mantenimiento
Número de métodos
Longitud del método de Avg

Después de la refactorización

Métrico Archivo 1 Archivo 2 Total Cambio
Líneas de código
Complejidad ciclomática
Índice de mantenimiento
Número de métodos
Longitud del método de Avg

Lista de comprobación posterior a la refactorización

  • [ ] Todas las pruebas que pasan
  • [ ] No hay nuevas advertencias o errores
  • [ ] Código compila con éxito
  • [ ] Verificación manual completada
  • [ ] Documentación actualizada (si es necesario)
  • [ ] Código revisado
  • [ ] Métrica mejorada
  • [ ] Firma de usuario obtenida

Lecciones aprendidas

Lo que fue bien

  • [Tema 1]
  • [Tema 2]

Lo que podría mejorarse

  • [Tema 1]
  • [Tema 2]

Recomendaciones para el futuro

  • [Tema 1]
  • [Tema 2]

Homologaciones

Función Nombre Fecha Firma
Autor del plan
Plomo técnico
Propietario del producto

Apéndice

  • [Enlace con documentos pertinentes]

B. Materiales de referencia

  • [Enlace al catálogo de olores código]
  • [Enlace al catálogo de refactorización]

C. Herramientas utilizadas

  • [Marco de pruebas]
  • [Herramientas de linte]
  • [Herramientas de análisis de complejidad]

Última actualización: 4 de agosto de 2026 Versión de Claude Code: 2.1.220 Fuentes: - https://code.claude.com/docs/en/skills Modelos compatibles: Claude Fable 5, Claude Opus 5, Claude Sonnet 5, Claude Sonnet 4.6, Claude Opus 4.8, Claude Haiku 4.5

Versión en español de Cris Severin. Basado en Claude How To de luongnv89, bajo licencia MIT. Proyecto original