Ejemplo de refactorización: Extraer Clase

Refactorización con PHP

Así como queremos limitar la cantidad de líneas y niveles de indentación que un método pueda tener, de manera que no se vuelva tan complejo; muchas veces queremos limitar la cantidad de líneas y métodos en una clase para reducir su complejidad. De hecho, uno de los ejercicios de calistenia de objetos es que mantengamos nuestras clases con menos de 50 líneas. En esta lección, te enseñaré, utilizando varias técnicas de refactorización, a mover parte de una funcionalidad de una clase a otra clase nueva, paso por paso.

Regístrate para ver ésta y cientos de lecciones exclusivas.

Eliminar variables temporales

Refactorización con PHP

Una peculiaridad que habrás podido notar de esta refactorización hasta ahora, ha sido la disminución de variables temporales. Las variables temporales, indispensables en la programación estructurada, suelen dificultar la lectura y la realización de cambios en nuestro código, interponiéndose así en la aplicación de refactorización. En esta lección verás cómo eliminar el uso de una pequeña variable temporal, nos da la posibilidad de aplicar fácilmente las técnicas de refactorización que hemos aprendido hasta los momentos. Además veremos cómo podemos reemplazar el uso de variables temporales dentro de ciclos.

Regístrate para ver ésta y cientos de lecciones exclusivas.

Calistenia de Objetos en PHP: No uses else (sentencias de guardia)

Refactorización con PHP

La calistenia de objetos son una serie de ejercicios que puedes aplicar para mejorar la legibilidad del código. En esta lección, hablaré sobre el ejercicio que nos pide no utilizar else, también hablaré de las sentencias de guardia o guarda (en inglés, Guard Clauses) y puesto que estos conocimientos no deben ser tomados de forma estricta para todos los casos, te daré mi opinión personal del tema, por supuesto con diversos ejemplos. De esta manera mejoraremos aún más la legibilidad del código de nuestro ejemplo mediante refactorización adicional.

Regístrate para ver ésta y cientos de lecciones exclusivas.

Calistenia de objetos en PHP: un solo nivel de indentación por método

Refactorización con PHP

La calistenia de objetos son una serie de ejercicios que puedes aplicar para mejorar la legibilidad del código. En esta lección, utilizaré uno de estos ejercicios (el que nos indica que sólo puede haber un máximo de un (1) nivel de indentación por método) para continuar la refactorización de la clase de ejemplo, de forma de simplificar la complejidad que aún tenemos dentro de los métodos y hacerlos de más fácil lectura.

Regístrate para ver ésta y cientos de lecciones exclusivas.

Ejemplo de Refactorización, parte 1: Extraer métodos

Refactorización con PHP

En esta lección del Curso de Refactorización, vamos a comenzar a refactorizar nuestro ejemplo, para ello utilizaremos una técnica muy sencilla llamada «Extraer métodos» que nos permitirá separar y re-organizar el código de nuestra clase de manera de que se vuelva más fácil de seguir y leer.

Regístrate para ver ésta y cientos de lecciones exclusivas.

Automatizando las pruebas con PHPUnit

Refactorización con PHP

En esta lección te enseñaré cómo puedes automatizar el proceso de prueba de una clase de PHP y sus métodos, escribiendo y ejecutando pruebas unitarias con PHPUnit. De esta manera ya no dependeremos del navegador ni de nuestro esfuerzo manual para comprobar que la clase funciona, sino que le dejaremos esta tarea al procesador de nuestra computadora.

Regístrate para ver ésta y cientos de lecciones exclusivas.

Instalación y configuración de PHPUnit

Refactorización con PHP

En esta lección voy a instalar y a configurar la última versión de PHPUnit disponible al momento de grabar este video (6.5) utilizando Composer, también voy a crear y a configurar mi directorio de pruebas automatizadas (tests/) de forma que pueda comenzar a escribir las pruebas de mi componente, las cuales serán las que me den el soporte que necesito para poder realizar cambios en mi código (refactorizar) con más confianza.

Regístrate para ver ésta y cientos de lecciones exclusivas.

Ejemplo para refactorizar: programación estructurada

Refactorización con PHP

La mayoría de nosotros ya sabemos cómo crear una clase, agregar propiedades y métodos, instanciar una clase, llamar a un método, etc. Pero esto NO quiere decir que trabajemos con una metodología de desarrollo orientada a objetos. Muchos seguimos aplicando la misma metodología de programación estructurada, con la única diferencia que envolvemos nuestra lógica estructurada dentro de un método en una clase, como veremos a continuación.

Regístrate para ver ésta y cientos de lecciones exclusivas.

Suscríbete a nuestro boletín

Te enviaremos publicaciones con consejos útiles y múltiples recursos para que sigas aprendiendo.

Suscríbete a nuestro boletín

Recibe consejos útiles, promos y múltiples recursos directamente en tu correo.

Tu nombre y correo serán enviados directamente a MailChimp. No compartiremos tus datos con otras empresas.