Programa mejor que chuck norris herramientas que nos ayudan a mejorar
-
Upload
rafbermudez -
Category
Software
-
view
970 -
download
0
Transcript of Programa mejor que chuck norris herramientas que nos ayudan a mejorar
![Page 1: Programa mejor que chuck norris herramientas que nos ayudan a mejorar](https://reader036.fdocuments.co/reader036/viewer/2022062502/58a4f3c31a28abd8548b6c1d/html5/thumbnails/1.jpg)
@rafbermudez#codemotion_es
● Rafael Bermúdez Míguez ● @rafbermudez● [email protected]
Programa mejor que Chuck Norris: Herramientas que nos ayudan a mejorar
MADRID · NOV 27-28 · 2015
![Page 2: Programa mejor que chuck norris herramientas que nos ayudan a mejorar](https://reader036.fdocuments.co/reader036/viewer/2022062502/58a4f3c31a28abd8548b6c1d/html5/thumbnails/2.jpg)
@rafbermudez#codemotion_es
De qué va esta película• Nadie programa como Chuck Norris, y lo sabes• Testear NO MOTIVA• Es difícil seguir las convenciones
• Formato de código• DRY• Mejora continua • Buenas prácticas
• Necesitamos métricas, pero el trabajo administrativo es horrible• Figura de “el perseguidor”
![Page 3: Programa mejor que chuck norris herramientas que nos ayudan a mejorar](https://reader036.fdocuments.co/reader036/viewer/2022062502/58a4f3c31a28abd8548b6c1d/html5/thumbnails/3.jpg)
@rafbermudez#codemotion_es
GRACIAS
www.ets.es
![Page 4: Programa mejor que chuck norris herramientas que nos ayudan a mejorar](https://reader036.fdocuments.co/reader036/viewer/2022062502/58a4f3c31a28abd8548b6c1d/html5/thumbnails/4.jpg)
@rafbermudez#codemotion_es
Cobertura del código• Mide las partes del código que han sido comprobadas
• Groovy: Test Code Coverage• https://github.com/beckje01/grails-code-coverage
• Configura las partes que te interesen
• haltOnFailure• lineRate• branchRate
![Page 5: Programa mejor que chuck norris herramientas que nos ayudan a mejorar](https://reader036.fdocuments.co/reader036/viewer/2022062502/58a4f3c31a28abd8548b6c1d/html5/thumbnails/5.jpg)
@rafbermudez#codemotion_es
Cobertura: Provoca Buenas PrácticasList<Personas> Saludar(List<Persona> personas, Boolean esFeliz){
if (esFeliz){ //golpe de barba return personas[0..<-1]
} else{ //patada voladora return []
}}
List<Personas> Saludar(List<Persona> personas, Boolean esFeliz){
if (esFeliz){ return golpeDeBarba(personas)
} else{ return patadaVoladora(personas) }}
ENTENDIBLE, TESTEABLE
![Page 6: Programa mejor que chuck norris herramientas que nos ayudan a mejorar](https://reader036.fdocuments.co/reader036/viewer/2022062502/58a4f3c31a28abd8548b6c1d/html5/thumbnails/6.jpg)
@rafbermudez#codemotion_es
Métricas de código• Groovy: Gmetrics
• http://gmetrics.sourceforge.net/
• Métricas de código (Totales y medias)• Lineas por clase• Líneas por función• Puntos de función• Complejidad ciclomática• Complejidad ABC• ...
![Page 7: Programa mejor que chuck norris herramientas que nos ayudan a mejorar](https://reader036.fdocuments.co/reader036/viewer/2022062502/58a4f3c31a28abd8548b6c1d/html5/thumbnails/7.jpg)
@rafbermudez#codemotion_es
Complejidad ciclomática
![Page 8: Programa mejor que chuck norris herramientas que nos ayudan a mejorar](https://reader036.fdocuments.co/reader036/viewer/2022062502/58a4f3c31a28abd8548b6c1d/html5/thumbnails/8.jpg)
@rafbermudez#codemotion_es
Complejidad ABC
![Page 9: Programa mejor que chuck norris herramientas que nos ayudan a mejorar](https://reader036.fdocuments.co/reader036/viewer/2022062502/58a4f3c31a28abd8548b6c1d/html5/thumbnails/9.jpg)
@rafbermudez#codemotion_es
GMetrics
![Page 10: Programa mejor que chuck norris herramientas que nos ayudan a mejorar](https://reader036.fdocuments.co/reader036/viewer/2022062502/58a4f3c31a28abd8548b6c1d/html5/thumbnails/10.jpg)
@rafbermudez#codemotion_es
Análisis estático de código• Útil para
• Seguir buenas prácticas• Establecer convenciones de equipo• Detectar patrones nocivos
• Detectar fallos de seguridad!• Groovy: Codenarc
• http://codenarc.sourceforge.net/• multitud de reglas preconfiguradas• customizable
• crea tus propias reglas
![Page 11: Programa mejor que chuck norris herramientas que nos ayudan a mejorar](https://reader036.fdocuments.co/reader036/viewer/2022062502/58a4f3c31a28abd8548b6c1d/html5/thumbnails/11.jpg)
@rafbermudez#codemotion_es
Integración continua• Automatiza
• La compilación desde tu sistema de versionado• La ejecución de test• La generación de reportes• El deploy
• Jenkins• Servidor de integración continua• Automatiza la ejecución de tareas• Chuck Norris Plugin
![Page 12: Programa mejor que chuck norris herramientas que nos ayudan a mejorar](https://reader036.fdocuments.co/reader036/viewer/2022062502/58a4f3c31a28abd8548b6c1d/html5/thumbnails/12.jpg)
@rafbermudez#codemotion_es
Ahora un poco de acción...
● Rafael Bermúdez Míguez ● @rafbermudez● [email protected]
Programa mejor que Chuck Norris:
Herramientas que nos ayudan a mejorar
MADRID · NOV 27-28 · 2015