C a m p u s P a r t y 2 0 1 4
TALLER DE REFACTORIZACIÓN
Carla Suárez @carlast22
María Gómez @mariascandella
!
REFACTORIZACIÓN
!
▫︎Técnica de cambio de código.
▫︎Se altera la estructura interna del módulo
pero no su comportamiento ex...
HABILIDADES PARA DESARROLLAR
▫︎Uso de buenas prácticas
(principio SOLID)
▫︎Trabajar de forma
incremental
▫︎TDD (desarrollo...
SOLID
▫︎Single Responsibility Principle
▫︎Open/Closed Principle
▫︎Liskov Substitution Principle
▫︎Interface Segregation Pr...
SOLID
▫︎Single Responsibility Principle
5
“Un módulo debe tener una sola razón para cambiar”
SOLID
▫︎Open/Closed Principle
6
“Módulos deben estar abiertos a extensiones pero cerrados a
modificaciones”
SOLID
▫︎Liskov Substitution Principle
7
“Cada clase que hereda de otra puede usarse como su padre
sin necesidad de conocer...
SOLID
▫︎Interface Segregation Principle
8
“Ningún cliente debería ser forzado a depender de métodos
que no usa”
SOLID
▫︎Dependency Inversion Principle
9
“Módulos deben depender basándose en abstracciones no en
objetos concretos”
TRABAJAR DE FORMA INCREMENTAL
10
Initial
Planning
Planning
Requirements Analysis  &  Design
Implementation
Deployment
Test...
PRUEBAS UNITARIAS
▫︎Una forma de
comprobar el correcto
funcionamiento de un
módulo de código.
▫︎Aseguran que el módulo
fun...
EJEMPLO PRUEBA UNITARIA
12
TDD (DESARROLLO GUIADO POR PRUEBAS)
13
RED
GREENREFACTOR
PROGRAMACIÓN EN PAREJAS
▫︎Dos programadores trabajando en la misma
computadora con el mismo código
▫︎Beneficios:
▫︎Mayor ca...
VAMOS A DESARROLLAR!
▫︎http://tinyurl.com/cpq4TW
15
Próxima SlideShare
Cargando en…5
×

Taller de Refactorización (Campus Party Quito 2014)

239 visualizaciones

Publicado el

Esta presentación sirve de base para facilitar un taller de técnicas de refactorización de código. Lo llevamos a cabo en el Campus Party Quito 2014.
Está enfocada a enseñar un poco de teoría (test unitarios, TDD, SOLID) para llevar a cabo ciertos ejercicios.

Publicado en: Tecnología
0 comentarios
0 recomendaciones
Estadísticas
Notas
  • Sé el primero en comentar

  • Sé el primero en recomendar esto

Sin descargas
Visualizaciones
Visualizaciones totales
239
En SlideShare
0
De insertados
0
Número de insertados
37
Acciones
Compartido
0
Descargas
1
Comentarios
0
Recomendaciones
0
Insertados 0
No insertados

No hay notas en la diapositiva.

Taller de Refactorización (Campus Party Quito 2014)

  1. 1. C a m p u s P a r t y 2 0 1 4 TALLER DE REFACTORIZACIÓN Carla Suárez @carlast22 María Gómez @mariascandella !
  2. 2. REFACTORIZACIÓN ! ▫︎Técnica de cambio de código. ▫︎Se altera la estructura interna del módulo pero no su comportamiento externo ▫︎Se usa para limpiar el código y mejorar su estructura 2
  3. 3. HABILIDADES PARA DESARROLLAR ▫︎Uso de buenas prácticas (principio SOLID) ▫︎Trabajar de forma incremental ▫︎TDD (desarrollo guiado por pruebas) ▫︎Buen diseño de casos de pruebas ▫︎Programación en parejas 3
  4. 4. SOLID ▫︎Single Responsibility Principle ▫︎Open/Closed Principle ▫︎Liskov Substitution Principle ▫︎Interface Segregation Principle ▫︎Dependency Inversion Principle 4
  5. 5. SOLID ▫︎Single Responsibility Principle 5 “Un módulo debe tener una sola razón para cambiar”
  6. 6. SOLID ▫︎Open/Closed Principle 6 “Módulos deben estar abiertos a extensiones pero cerrados a modificaciones”
  7. 7. SOLID ▫︎Liskov Substitution Principle 7 “Cada clase que hereda de otra puede usarse como su padre sin necesidad de conocer las diferencias entre ellas. ”
  8. 8. SOLID ▫︎Interface Segregation Principle 8 “Ningún cliente debería ser forzado a depender de métodos que no usa”
  9. 9. SOLID ▫︎Dependency Inversion Principle 9 “Módulos deben depender basándose en abstracciones no en objetos concretos”
  10. 10. TRABAJAR DE FORMA INCREMENTAL 10 Initial Planning Planning Requirements Analysis  &  Design Implementation Deployment Testing Evaluation http://en.wikipedia.org/wiki/Iterative_and_incremental_development
  11. 11. PRUEBAS UNITARIAS ▫︎Una forma de comprobar el correcto funcionamiento de un módulo de código. ▫︎Aseguran que el módulo funciona correctamente de manera independiente. 11
  12. 12. EJEMPLO PRUEBA UNITARIA 12
  13. 13. TDD (DESARROLLO GUIADO POR PRUEBAS) 13 RED GREENREFACTOR
  14. 14. PROGRAMACIÓN EN PAREJAS ▫︎Dos programadores trabajando en la misma computadora con el mismo código ▫︎Beneficios: ▫︎Mayor calidad ▫︎Mayor productividad ▫︎Menos riesgo de errores ▫︎Modelo ping-pong 14
  15. 15. VAMOS A DESARROLLAR! ▫︎http://tinyurl.com/cpq4TW 15

×