Curso de Refactoring
Conoce y aplica las técnicas de refactoring para desarrollo de software
Material disponible
Avanzado
7 Clases 15 h
Refactoring es una técnica que surge dentro de TDD (Test Driven Development) de XP (eXtreme Programming) para el desarrollo Ágil. Pero, a día de hoy, se ha constituido como un técnica efectiva dentro del desarrollo de software bajo cualquier metodología.   

En este curso aprenderás el concepto de refactoring, sus principios, así como las condiciones y técnicas para su correcta aplicación. Además verás su aplicación en una serie de casos prácticos, donde se podrán aplicar dichas técnicas aprendidas.

Qué aprenderé en el Curso de Refactoring

  • Evolución del Desarrollo Software
    • Evolución de la Ingeniería
    • Evolución de las Metodologías de Desarrollo Software
  • Contexto del Refactoring
  • Pre-condición del Refactoring
    • Código Maloliente vs Código Limpio
  • Bucle del Refactoring
  • Invariante del Refactoring
  • Condición del Refactoring
  • Cuerpo del Refactoring
    • Micro-pasos
  • Casos Prácticos

Objetivos del curso

En el Curso de Refactoring el estudiante conocerá el concepto dentro de la disciplina de la ingeniería del software y cómo encaja en las distintas metodologías de Desarrollo de Software. Se estudiarán las técnicas de refactoring y los pasos que se deben realizar para aplicar la técnica.

Por medio de diversos casos prácticos el estudiante podrá detectar las necesidades de refactorización de un código mejorable, para luego realizar los procedimientos aprendidos y obtener un código de mejor calidad o adaptado a la incorporación de nuevas funcionalidades.

Por qué debes aprender Refactoring

Refactoring es una técnica de la ingeniería del software dedicada a la mejora o re-diseño del código fuente manteniendo inalterada su funcionalidad. Busca básicamente una reestructuración o reescritura del código fuente aumentando su calidad y/o permitiendo su extensión sin degradar la calidad. Su objetivo final es lograr un desarrollo efectivo de las aplicaciones.

Aunque muchas personas hayan oído hablar sobre el concepto y puedan realizar de una u otra manera la limpieza del código en sus proyectos, existe la técnica específica de refactoring avalada por autores de relevancia: Kent Beck de eXtreme Programming, Martin Fowler de Integración Continua, …

Esta técnica requiere el conocimiento de los principios de diseño orientado a objetos (p.e. SOLID, DRY, KISS, …) y de pruebas unitarias que aseguren que se mantiene el comportamiento inicial.

Clases y contenidos

Introducción a Refactoring Gratis
  • Introducción al Refactoring y la evolución del desarrollo del software en general.
  • Qué condiciones se necesitan para aplicar refactoring, en qué casos y bajo qué situaciones. - Qué tipo de acciones se van a realizar durante el curso para aprender a hacer la refactorización del código.
Micropasos en el Refactoring
  • Pre-condición del Refactoring
  • Código Maloliente vs Código Limpio
  • Micropasos en el Refactoring
Cuerpo del Refactoring y ejercicios

Repaso de Micropasos y ejercicio del libro de Martin Fowler

Casos Prácticos Refactoring
  • Ejercicio de refactorización de la aplicación de Movies, realizando la serie completa de pasos que Martin Fowler explica
  • Además se comienza la resolución del ejercicio propuesto sobre los intervalos.
Refactoring del Ejercicio Intervalo

En esta clase nos dedicamos por completo a realizar el ejercicio propuesto de los intervalos. Realizamos una serie de pasos importantes y llegamos a un estado de las clases más correcto, aunque todavía no es el final.

Refactoring en Grande

Completamos todas las versiones del ejercicio Intervalo que dejamos pendientes en la sesión anterior y finalizamos la clase repasando los conceptos teóricos del Refactoring en grande.

Refactorización detalle de micropasos y ejercicios

Catálogo de Refactorización, micropasos y última ronda de ejercicios.

Valoraciones

Saúl Méndez

Guillermo Alonso

Holden

Agustin

¿Conoces nuestra tarifa plana?

Toda la formación de EscuelaIT, con más de 130 cursos completos para aprender las más variadas tecnologías de programación, diseño y marketing online. Todo! con tu suscripción.

Suscríbete