SlideShare a Scribd company logo
1 of 29
Download to read offline
Buscando (y encontrando) la pareja ideal

Taller de desarrollo de aplicaciones
                   Web con Grails 2
       Fernando Redondo Ramírez
            @pronoide_fer
Índice




• ¿Quién soy?
• Breve Introducción y …
• ¡Manos a la obra!
¿Quién soy?




• Emprendedor y empresario en Pronoide
  desde 2003
• Formador Java & Friends
• Haciendo cosas con Java desde 1999
• Ingeniero técnico informático
• Casado y padre de dos hijos
Breve Introducción




¿Otro taller de Grails? Sí, pero:
  • Usaremos Grails 2
  • Usaremos “Metodología TDD” y haremos muchas
    pruebas
  • Escribiremos todo el código nosotros
  • No haremos nada Scaffolding ;)
  • No es necesario ningún plugin
¡Manos a la obra!

Notas
1. Descargar http://pronoide.com/descargas/taller-
   greach.zip y descomprimir
2. Arrancar el Groovy/Grails Tool Suite 3.1 (GTS)
3. Elegir un workspace
4. Esperar…
Etapa: Crear la aplicación web

i.   Crear la aplicación web (create-app parejas)
Etapa: Crear el modelo

ii. Crear la clase de dominio (create-domain-class
    parejas.Persona)
Etapa: Crear el modelo

iii. Definir las propiedades, constantes, restricciones y
     mapeos
Etapa: Crear el modelo

iv. Escribimos un test unitario
Etapa: Crear el modelo

v. Ejecutamos el test unitario (test-app)
Etapa: Crear el modelo

vi. Escribimos un test de integración (create-integration-
    test ) y lo ejecutamos (test-app integration:)
Etapa: Crear el modelo

vii. Cambiamos la configuración de la base de datos
     volvemos a ejecutar (test-app integration:)
Etapa: Crear la capa de negocio

viii. Creamos el servicio (create-service parejas.Busquedas)
Etapa: Crear la capa de negocio

ix. Escribimos el test unitario del servicio
Etapa: Crear la capa de negocio

x. Implementamos el servicio y configuramos trazas
Etapa: Crear la capa de negocio

xi. Creamos un Helper (Java) y lo registramos en Spring
Etapa: Crear la capa de negocio

xii. Creamos un test de integración (create-integration-test
     parejas.BusquedasServiceIntegration)
Etapa: Crear la capa de presentación

xiii. Creamos un controlador (create-controller
      parejas.BusquedasService)
Etapa: Crear la capa de presentación

xiv. Creamos el test unitario
Etapa: Crear la capa de presentación

xv. Creamos el test de integración
Etapa: Crear la capa de presentación

xvi. Creamos la página GSP de búsquedas
Etapa: Crear la capa de presentación

xvii.Creamos la página GSP de ideal encontrado
Etapa: Crear la capa de presentación

xviii.Creamos la página GSP de ideal NO encontrado
Etapa: Crear la capa de presentación

xix. Ajustes en la presentación (main.gsp/main.ss)
Etapa: Ejecutar la aplicación

xx. Arrancamos la aplicación (run-app)
Etapa: Ejecutar la aplicación

xxi. Cargar datos y mapear el controlador por defecto
Etapa: Ejecutar la aplicación

xxii. Jugar con la aplicación
¡Se acabó!

 Seguro que con esta
 aplicación empiezo a
    dejar de tener
relaciones: “pero sólo
    como amiga…”
¡Gracias!

•   @pronoide_fer
•   fredondo@pronoide.com
•   http://pronoide.com
•   http://blog.pronoide.es

More Related Content

Similar to Greach2013 taller-grails2

GUIA DE LABORATORIO DEL USO DE LOS FRAMEWORS PHONEGAP Y JQUERY MOBILE EN APL...
GUIA DE  LABORATORIO DEL USO DE LOS FRAMEWORS PHONEGAP Y JQUERY MOBILE EN APL...GUIA DE  LABORATORIO DEL USO DE LOS FRAMEWORS PHONEGAP Y JQUERY MOBILE EN APL...
GUIA DE LABORATORIO DEL USO DE LOS FRAMEWORS PHONEGAP Y JQUERY MOBILE EN APL...Ivan Petrlik
 
Base de datos desde vb 6.0
Base de datos desde vb 6.0Base de datos desde vb 6.0
Base de datos desde vb 6.0WendyMendez30
 
Tutorial Para Hacer Una Pagina Web
Tutorial Para Hacer Una Pagina WebTutorial Para Hacer Una Pagina Web
Tutorial Para Hacer Una Pagina Webisai220595
 
Instalacion de java y sus herramientas
Instalacion de java y sus herramientasInstalacion de java y sus herramientas
Instalacion de java y sus herramientasJuan Diaz Calixtro
 
Congreso visión 2012 - taller introducción app engine
Congreso visión 2012 - taller introducción app engineCongreso visión 2012 - taller introducción app engine
Congreso visión 2012 - taller introducción app engineNigeŗ Arce
 
GUIA DE LABORATORIO PHONE GAP JQUERY MOBILE CARGADO DE_DATOS_DE_REGISTROS...
GUIA DE  LABORATORIO  PHONE GAP JQUERY  MOBILE  CARGADO DE_DATOS_DE_REGISTROS...GUIA DE  LABORATORIO  PHONE GAP JQUERY  MOBILE  CARGADO DE_DATOS_DE_REGISTROS...
GUIA DE LABORATORIO PHONE GAP JQUERY MOBILE CARGADO DE_DATOS_DE_REGISTROS...Ivan Petrlik
 
Greach 2011 : Creando Plugins Con Griffon
Greach 2011 : Creando Plugins Con GriffonGreach 2011 : Creando Plugins Con Griffon
Greach 2011 : Creando Plugins Con GriffonMario García
 
Test Unitarios y E2E front y Back
Test Unitarios y E2E front y BackTest Unitarios y E2E front y Back
Test Unitarios y E2E front y BackEric Zeidan
 
Mi primera app con GAE y GWT
Mi primera app con GAE y GWTMi primera app con GAE y GWT
Mi primera app con GAE y GWTGDG Lima
 
Desarrollo de Aplicaciones Web con Symfony 5/10/2011
Desarrollo de Aplicaciones Web con Symfony 5/10/2011Desarrollo de Aplicaciones Web con Symfony 5/10/2011
Desarrollo de Aplicaciones Web con Symfony 5/10/2011gorolabs
 
Introducción a SharePoint Framework
Introducción a SharePoint FrameworkIntroducción a SharePoint Framework
Introducción a SharePoint FrameworkHaaron Gonzalez
 

Similar to Greach2013 taller-grails2 (20)

GUIA DE LABORATORIO DEL USO DE LOS FRAMEWORS PHONEGAP Y JQUERY MOBILE EN APL...
GUIA DE  LABORATORIO DEL USO DE LOS FRAMEWORS PHONEGAP Y JQUERY MOBILE EN APL...GUIA DE  LABORATORIO DEL USO DE LOS FRAMEWORS PHONEGAP Y JQUERY MOBILE EN APL...
GUIA DE LABORATORIO DEL USO DE LOS FRAMEWORS PHONEGAP Y JQUERY MOBILE EN APL...
 
Base de datos desde vb 6.0
Base de datos desde vb 6.0Base de datos desde vb 6.0
Base de datos desde vb 6.0
 
Tutorial Para Hacer Una Pagina Web
Tutorial Para Hacer Una Pagina WebTutorial Para Hacer Una Pagina Web
Tutorial Para Hacer Una Pagina Web
 
Actividad 1 cms
Actividad 1 cmsActividad 1 cms
Actividad 1 cms
 
Web API ASP. NET XAMARIN - Luis Fernando Aguas
Web API ASP. NET XAMARIN - Luis Fernando AguasWeb API ASP. NET XAMARIN - Luis Fernando Aguas
Web API ASP. NET XAMARIN - Luis Fernando Aguas
 
Instalacion de java y sus herramientas
Instalacion de java y sus herramientasInstalacion de java y sus herramientas
Instalacion de java y sus herramientas
 
Atix20
Atix20Atix20
Atix20
 
Congreso visión 2012 - taller introducción app engine
Congreso visión 2012 - taller introducción app engineCongreso visión 2012 - taller introducción app engine
Congreso visión 2012 - taller introducción app engine
 
GUIA DE LABORATORIO PHONE GAP JQUERY MOBILE CARGADO DE_DATOS_DE_REGISTROS...
GUIA DE  LABORATORIO  PHONE GAP JQUERY  MOBILE  CARGADO DE_DATOS_DE_REGISTROS...GUIA DE  LABORATORIO  PHONE GAP JQUERY  MOBILE  CARGADO DE_DATOS_DE_REGISTROS...
GUIA DE LABORATORIO PHONE GAP JQUERY MOBILE CARGADO DE_DATOS_DE_REGISTROS...
 
Greach 2011 : Creando Plugins Con Griffon
Greach 2011 : Creando Plugins Con GriffonGreach 2011 : Creando Plugins Con Griffon
Greach 2011 : Creando Plugins Con Griffon
 
Phonegap
PhonegapPhonegap
Phonegap
 
Phonegap
PhonegapPhonegap
Phonegap
 
Test Unitarios y E2E front y Back
Test Unitarios y E2E front y BackTest Unitarios y E2E front y Back
Test Unitarios y E2E front y Back
 
FULLSTACK JS DEV in 2017
FULLSTACK JS DEV in 2017FULLSTACK JS DEV in 2017
FULLSTACK JS DEV in 2017
 
Mi primera app con GAE y GWT
Mi primera app con GAE y GWTMi primera app con GAE y GWT
Mi primera app con GAE y GWT
 
Workshop calabash appium
Workshop calabash appiumWorkshop calabash appium
Workshop calabash appium
 
Cv dennys-jose-marquez-reyes-desarrollador-web
Cv dennys-jose-marquez-reyes-desarrollador-webCv dennys-jose-marquez-reyes-desarrollador-web
Cv dennys-jose-marquez-reyes-desarrollador-web
 
Desarrollo de Aplicaciones Web con Symfony 5/10/2011
Desarrollo de Aplicaciones Web con Symfony 5/10/2011Desarrollo de Aplicaciones Web con Symfony 5/10/2011
Desarrollo de Aplicaciones Web con Symfony 5/10/2011
 
Introducción a SharePoint Framework
Introducción a SharePoint FrameworkIntroducción a SharePoint Framework
Introducción a SharePoint Framework
 
Html5
Html5Html5
Html5
 

More from Fernando Redondo Ramírez

More from Fernando Redondo Ramírez (8)

Codemotion 2015 spock_workshop
Codemotion 2015 spock_workshopCodemotion 2015 spock_workshop
Codemotion 2015 spock_workshop
 
Spring IO 2015 Spock Workshop
Spring IO 2015 Spock WorkshopSpring IO 2015 Spock Workshop
Spring IO 2015 Spock Workshop
 
Greach 2015 Spock workshop
Greach 2015 Spock workshopGreach 2015 Spock workshop
Greach 2015 Spock workshop
 
Seguridad de las aplicaciones web con Spring Security 3.x
Seguridad de las aplicaciones web con Spring Security 3.xSeguridad de las aplicaciones web con Spring Security 3.x
Seguridad de las aplicaciones web con Spring Security 3.x
 
Javacro 2014 Spring Security 3 Speech
Javacro 2014 Spring Security 3 SpeechJavacro 2014 Spring Security 3 Speech
Javacro 2014 Spring Security 3 Speech
 
Javacro 2014 SemameStreet Grails 2 Speech
Javacro 2014  SemameStreet Grails 2 SpeechJavacro 2014  SemameStreet Grails 2 Speech
Javacro 2014 SemameStreet Grails 2 Speech
 
Greach 2014 Sesamestreet Grails2 Workshop
Greach 2014 Sesamestreet Grails2 Workshop Greach 2014 Sesamestreet Grails2 Workshop
Greach 2014 Sesamestreet Grails2 Workshop
 
Springio2012 taller-seguridad-web-springsecurity-3
Springio2012 taller-seguridad-web-springsecurity-3Springio2012 taller-seguridad-web-springsecurity-3
Springio2012 taller-seguridad-web-springsecurity-3
 

Recently uploaded

investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIhmpuellon
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...JohnRamos830530
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxAlan779941
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativanicho110
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanamcerpam
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21mariacbr99
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxJorgeParada26
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxFederico Castellari
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.FlorenciaCattelani
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxMiguelAtencio10
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estossgonzalezp1
 

Recently uploaded (12)

investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXI
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptx
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 

Greach2013 taller-grails2

  • 1. Buscando (y encontrando) la pareja ideal Taller de desarrollo de aplicaciones Web con Grails 2 Fernando Redondo Ramírez @pronoide_fer
  • 2. Índice • ¿Quién soy? • Breve Introducción y … • ¡Manos a la obra!
  • 3. ¿Quién soy? • Emprendedor y empresario en Pronoide desde 2003 • Formador Java & Friends • Haciendo cosas con Java desde 1999 • Ingeniero técnico informático • Casado y padre de dos hijos
  • 4. Breve Introducción ¿Otro taller de Grails? Sí, pero: • Usaremos Grails 2 • Usaremos “Metodología TDD” y haremos muchas pruebas • Escribiremos todo el código nosotros • No haremos nada Scaffolding ;) • No es necesario ningún plugin
  • 5. ¡Manos a la obra! Notas 1. Descargar http://pronoide.com/descargas/taller- greach.zip y descomprimir 2. Arrancar el Groovy/Grails Tool Suite 3.1 (GTS) 3. Elegir un workspace 4. Esperar…
  • 6. Etapa: Crear la aplicación web i. Crear la aplicación web (create-app parejas)
  • 7. Etapa: Crear el modelo ii. Crear la clase de dominio (create-domain-class parejas.Persona)
  • 8. Etapa: Crear el modelo iii. Definir las propiedades, constantes, restricciones y mapeos
  • 9. Etapa: Crear el modelo iv. Escribimos un test unitario
  • 10. Etapa: Crear el modelo v. Ejecutamos el test unitario (test-app)
  • 11. Etapa: Crear el modelo vi. Escribimos un test de integración (create-integration- test ) y lo ejecutamos (test-app integration:)
  • 12. Etapa: Crear el modelo vii. Cambiamos la configuración de la base de datos volvemos a ejecutar (test-app integration:)
  • 13. Etapa: Crear la capa de negocio viii. Creamos el servicio (create-service parejas.Busquedas)
  • 14. Etapa: Crear la capa de negocio ix. Escribimos el test unitario del servicio
  • 15. Etapa: Crear la capa de negocio x. Implementamos el servicio y configuramos trazas
  • 16. Etapa: Crear la capa de negocio xi. Creamos un Helper (Java) y lo registramos en Spring
  • 17. Etapa: Crear la capa de negocio xii. Creamos un test de integración (create-integration-test parejas.BusquedasServiceIntegration)
  • 18. Etapa: Crear la capa de presentación xiii. Creamos un controlador (create-controller parejas.BusquedasService)
  • 19. Etapa: Crear la capa de presentación xiv. Creamos el test unitario
  • 20. Etapa: Crear la capa de presentación xv. Creamos el test de integración
  • 21. Etapa: Crear la capa de presentación xvi. Creamos la página GSP de búsquedas
  • 22. Etapa: Crear la capa de presentación xvii.Creamos la página GSP de ideal encontrado
  • 23. Etapa: Crear la capa de presentación xviii.Creamos la página GSP de ideal NO encontrado
  • 24. Etapa: Crear la capa de presentación xix. Ajustes en la presentación (main.gsp/main.ss)
  • 25. Etapa: Ejecutar la aplicación xx. Arrancamos la aplicación (run-app)
  • 26. Etapa: Ejecutar la aplicación xxi. Cargar datos y mapear el controlador por defecto
  • 27. Etapa: Ejecutar la aplicación xxii. Jugar con la aplicación
  • 28. ¡Se acabó! Seguro que con esta aplicación empiezo a dejar de tener relaciones: “pero sólo como amiga…”
  • 29. ¡Gracias! • @pronoide_fer • fredondo@pronoide.com • http://pronoide.com • http://blog.pronoide.es