Formato de práctica reflexiva ante una problemática social.docx.pdf
Refactoring: improving the desing of existing code Cap 1
1. JUAN PABLO ALZATE VILLA
REFACTORING: IMPROVING THE DESIGN OF
EXISTING CODE
CAPITULO 1
2. ¿QUÉ ES LA REFACTORIZACIÓN?
• Refactoring es el proceso de cambiar un sistema de software de
tal manera que no altera el comportamiento externo del código,
pero mejora su estructura interna.
• Es una manera disciplinada de limpiar Código que minimiza las
posibilidades de introducir errores.
• Con la refactorización se puede tomar un mal diseño y después
de este volver a trabajar en código bien diseñado.
3. EL PUNTO DE PARTIDA
(THE STARTING POINT)
• Antes que todo lo primero es analizar el código cuando
encuentre que tiene que agregar una función a un programa, y
el código del programa no es Estructurado de una manera
conveniente para agregar la característica, primero refactorice
el programa para hacerlo Fácil de modo que agregar la nueva
característica sea mas simple, después simplemente se agrega
la característica.
4. EL PRIMER PASO EN LA REFACTORIZACIÓN
(THE FIRST STEP IN REFACTORING)
• Realiza una prueba del programa para construir
un conjunto solido de pruebas , estas son
esenciales ya que se pueden introducir errores
en este…. Al hacer la refactorización, nos
basaremos en las pruebas.
5. DESCOMPOSICIÓN Y REDISTRIBUCIÓN DEL
MÉTODO DE DECLARACIÓN
(DECOMPOSING AND REDISTRIBUTING THE STATEMENT METHOD)
• Descomponer métodos grandes en algo más
pequeño ya que estos tienden a hacer las cosas
más manejables. Son más fáciles de trabajar y
moverse.
6. ELIMINACIÓN DE VARIABLES TEMPORALES
• las variables temporales pueden ser un
problema. Son útiles sólo dentro de su Propia
rutina, y por lo tanto alientan largas y complejas
rutinas.
7. CONCLUSIONES FINALES
• Varias refactorizaciones, incluyendo método de extracción,
método de movimiento y reemplazar condicional Con
polimorfismo.
• Todo esto conduce métodos mejor distribuidos y un código que
es más fácil entender.
• el ritmo de la refactorización: prueba, cambio pequeño, prueba,
pequeño cambio, prueba, pequeño cambio. es ese ritmo el que
permite que la refactorización se mueva sin peligro.
8. ALGUNOS EJEMPLOS DE REFACTORING
• Eliminación de variables temporales
En este caso tenemos dos variables temporales, las cuales se están
utilizando para obtener un total de los alquileres cliente. tanto las
versiones ASCII como HTML requieren estos totales. lo apropiado seria usar
Replace Temp con Query para reemplazar totalAmount y frecuente
RentalPoints con los métodos de consulta. las consultas son accesibles a
cualquier método de la clase y por lo tanto alientan un diseño más limpio sin
largos y complejos códigos:
10. este no es el caso más simple con ReplaceTemp y el Query TotalAmount fue asignado a
dentro del bucle, así que se tiene que copiar el bucle en el método de consulta.
después de compilar y probar esa refactorización, se hizo lo mismo para los puntos frecuentes: