Enviar pesquisa
Carregar
Intro a Grails @ ITESCA
•
3 gostaram
•
1,016 visualizações
Domingo Suarez Torres
Seguir
Introducción a Groovy en ITESCA, Ciudad Obregón, Sonora, México
Leia menos
Leia mais
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 60
Baixar agora
Baixar para ler offline
Recomendados
Desarrollo en 4G(Groovy, Grails, Git, GoogleAppEngine)
Desarrollo en 4G(Groovy, Grails, Git, GoogleAppEngine)
Jose Juan R. Zuñiga
Redefiniendo el MVC con Grails
Redefiniendo el MVC con Grails
Jose Juan R. Zuñiga
Introducción a Groovy
Introducción a Groovy
Jose Juan R. Zuñiga
T3chFest 2016 - De Java a Groovy: ¡Hora de Aventuras!
T3chFest 2016 - De Java a Groovy: ¡Hora de Aventuras!
Iván López Martín
Spring boot + spock
Spring boot + spock
Fátima Casaú Pérez
Creación de Plataformas
Creación de Plataformas
Jose Juan R. Zuñiga
Introducción a groovy & grails
Introducción a groovy & grails
Fátima Casaú Pérez
Jobsket.com, Grails en un proyecto real
Jobsket.com, Grails en un proyecto real
Jobsket
Recomendados
Desarrollo en 4G(Groovy, Grails, Git, GoogleAppEngine)
Desarrollo en 4G(Groovy, Grails, Git, GoogleAppEngine)
Jose Juan R. Zuñiga
Redefiniendo el MVC con Grails
Redefiniendo el MVC con Grails
Jose Juan R. Zuñiga
Introducción a Groovy
Introducción a Groovy
Jose Juan R. Zuñiga
T3chFest 2016 - De Java a Groovy: ¡Hora de Aventuras!
T3chFest 2016 - De Java a Groovy: ¡Hora de Aventuras!
Iván López Martín
Spring boot + spock
Spring boot + spock
Fátima Casaú Pérez
Creación de Plataformas
Creación de Plataformas
Jose Juan R. Zuñiga
Introducción a groovy & grails
Introducción a groovy & grails
Fátima Casaú Pérez
Jobsket.com, Grails en un proyecto real
Jobsket.com, Grails en un proyecto real
Jobsket
Groovy&Grails: desarrollo rápido de aplicaciones
Groovy&Grails: desarrollo rápido de aplicaciones
Fran García
Grails barcamp 2013
Grails barcamp 2013
Carlos Camacho
Codemotion 2015 crash y youdebug
Codemotion 2015 crash y youdebug
jmiguel rodriguez
Java poliglota
Java poliglota
Domingo Suarez Torres
Seminario Grails
Seminario Grails
Escuela de Groovy
Taller Grails
Taller Grails
Dani Latorre
Grails en SG08
Grails en SG08
Domingo Suarez Torres
Grails
Grails
Nicolás Bello Camilletti
Grails: Aumenta tu productividad en tus aplicaciones web Java
Grails: Aumenta tu productividad en tus aplicaciones web Java
Dani Latorre
Grails en el Fonasol
Grails en el Fonasol
Domingo Suarez Torres
Django on Jython Summer of Code Results
Django on Jython Summer of Code Results
Leonardo Soto
Dev Tools para Kubernetes - Codemotion 2019
Dev Tools para Kubernetes - Codemotion 2019
Micael Gallego
El proceso de desarrollo con herramientas Open Source
El proceso de desarrollo con herramientas Open Source
Jose Juan R. Zuñiga
Codemotion Madrid 2016 - De Java a Groovy: ¡Hora de Aventuras!
Codemotion Madrid 2016 - De Java a Groovy: ¡Hora de Aventuras!
Iván López Martín
Ecuador jug 2017 -incrementando la productividad de proyectos java ee con c...
Ecuador jug 2017 -incrementando la productividad de proyectos java ee con c...
César Hernández
Madrid-GUG (Alicante) 2017 - De Java a Groovy: ¡Hora de Aventuras!
Madrid-GUG (Alicante) 2017 - De Java a Groovy: ¡Hora de Aventuras!
Iván López Martín
WebRTC y Kurento en el T3cgFest 2015
WebRTC y Kurento en el T3cgFest 2015
Micael Gallego
Cómo contribuir en Proyectos de Código Abierto
Cómo contribuir en Proyectos de Código Abierto
Agile Express Ecuador / Thoughtworks
Introduccion a Groovy
Introduccion a Groovy
Andres Almiray
Node JS (Francisco Cerdas)
Node JS (Francisco Cerdas)
PiXeL16
Grails敏捷项目开发
Grails敏捷项目开发
Michael Yan
Antral small concept note
Antral small concept note
Antral अंतराल
Mais conteúdo relacionado
Mais procurados
Groovy&Grails: desarrollo rápido de aplicaciones
Groovy&Grails: desarrollo rápido de aplicaciones
Fran García
Grails barcamp 2013
Grails barcamp 2013
Carlos Camacho
Codemotion 2015 crash y youdebug
Codemotion 2015 crash y youdebug
jmiguel rodriguez
Java poliglota
Java poliglota
Domingo Suarez Torres
Seminario Grails
Seminario Grails
Escuela de Groovy
Taller Grails
Taller Grails
Dani Latorre
Grails en SG08
Grails en SG08
Domingo Suarez Torres
Grails
Grails
Nicolás Bello Camilletti
Grails: Aumenta tu productividad en tus aplicaciones web Java
Grails: Aumenta tu productividad en tus aplicaciones web Java
Dani Latorre
Grails en el Fonasol
Grails en el Fonasol
Domingo Suarez Torres
Django on Jython Summer of Code Results
Django on Jython Summer of Code Results
Leonardo Soto
Dev Tools para Kubernetes - Codemotion 2019
Dev Tools para Kubernetes - Codemotion 2019
Micael Gallego
El proceso de desarrollo con herramientas Open Source
El proceso de desarrollo con herramientas Open Source
Jose Juan R. Zuñiga
Codemotion Madrid 2016 - De Java a Groovy: ¡Hora de Aventuras!
Codemotion Madrid 2016 - De Java a Groovy: ¡Hora de Aventuras!
Iván López Martín
Ecuador jug 2017 -incrementando la productividad de proyectos java ee con c...
Ecuador jug 2017 -incrementando la productividad de proyectos java ee con c...
César Hernández
Madrid-GUG (Alicante) 2017 - De Java a Groovy: ¡Hora de Aventuras!
Madrid-GUG (Alicante) 2017 - De Java a Groovy: ¡Hora de Aventuras!
Iván López Martín
WebRTC y Kurento en el T3cgFest 2015
WebRTC y Kurento en el T3cgFest 2015
Micael Gallego
Cómo contribuir en Proyectos de Código Abierto
Cómo contribuir en Proyectos de Código Abierto
Agile Express Ecuador / Thoughtworks
Introduccion a Groovy
Introduccion a Groovy
Andres Almiray
Node JS (Francisco Cerdas)
Node JS (Francisco Cerdas)
PiXeL16
Mais procurados
(20)
Groovy&Grails: desarrollo rápido de aplicaciones
Groovy&Grails: desarrollo rápido de aplicaciones
Grails barcamp 2013
Grails barcamp 2013
Codemotion 2015 crash y youdebug
Codemotion 2015 crash y youdebug
Java poliglota
Java poliglota
Seminario Grails
Seminario Grails
Taller Grails
Taller Grails
Grails en SG08
Grails en SG08
Grails
Grails
Grails: Aumenta tu productividad en tus aplicaciones web Java
Grails: Aumenta tu productividad en tus aplicaciones web Java
Grails en el Fonasol
Grails en el Fonasol
Django on Jython Summer of Code Results
Django on Jython Summer of Code Results
Dev Tools para Kubernetes - Codemotion 2019
Dev Tools para Kubernetes - Codemotion 2019
El proceso de desarrollo con herramientas Open Source
El proceso de desarrollo con herramientas Open Source
Codemotion Madrid 2016 - De Java a Groovy: ¡Hora de Aventuras!
Codemotion Madrid 2016 - De Java a Groovy: ¡Hora de Aventuras!
Ecuador jug 2017 -incrementando la productividad de proyectos java ee con c...
Ecuador jug 2017 -incrementando la productividad de proyectos java ee con c...
Madrid-GUG (Alicante) 2017 - De Java a Groovy: ¡Hora de Aventuras!
Madrid-GUG (Alicante) 2017 - De Java a Groovy: ¡Hora de Aventuras!
WebRTC y Kurento en el T3cgFest 2015
WebRTC y Kurento en el T3cgFest 2015
Cómo contribuir en Proyectos de Código Abierto
Cómo contribuir en Proyectos de Código Abierto
Introduccion a Groovy
Introduccion a Groovy
Node JS (Francisco Cerdas)
Node JS (Francisco Cerdas)
Destaque
Grails敏捷项目开发
Grails敏捷项目开发
Michael Yan
Antral small concept note
Antral small concept note
Antral अंतराल
How To Make A Great Pbj
How To Make A Great Pbj
guest4a0e65
Groovy & Grails
Groovy & Grails
Michael Yan
NFC and Commerce combined
NFC and Commerce combined
Sven Haiges
Introduction to Grails Framework
Introduction to Grails Framework
PT.JUG
Destaque
(6)
Grails敏捷项目开发
Grails敏捷项目开发
Antral small concept note
Antral small concept note
How To Make A Great Pbj
How To Make A Great Pbj
Groovy & Grails
Groovy & Grails
NFC and Commerce combined
NFC and Commerce combined
Introduction to Grails Framework
Introduction to Grails Framework
Semelhante a Intro a Grails @ ITESCA
grails.org.mx Primera Reunion
grails.org.mx Primera Reunion
Domingo Suarez Torres
Taller Groovy
Taller Groovy
Domingo Suarez Torres
Eleva tu capacidad con Groovy
Eleva tu capacidad con Groovy
Domingo Suarez Torres
Introducción a Java FX
Introducción a Java FX
Iban Nieto Castillero
Vaadin y Grails Barcamp 2013
Vaadin y Grails Barcamp 2013
Carlos Camacho
GraalVM - MálagaJUG 2018-11-29
GraalVM - MálagaJUG 2018-11-29
Jorge Hidalgo
Desarrollando aplicaciones web con Zope 3
Desarrollando aplicaciones web con Zope 3
Roberto Allende
JAVA3.0
JAVA3.0
josemanuel2
Java 9, 10, 11 ,12, 13 and more
Java 9, 10, 11 ,12, 13 and more
HillmerC
Construccion de proyectos con gradle
Construccion de proyectos con gradle
David Gómez García
Groovy y Grails, y la pastilla roja
Groovy y Grails, y la pastilla roja
Escuela de Groovy
Programacion Web UGR - Tema 7.pdf
Programacion Web UGR - Tema 7.pdf
AnonymousNdBOr4
SCJP, Clase 1: Introducción al curso, Intro a Java, Declaración y Control de ...
SCJP, Clase 1: Introducción al curso, Intro a Java, Declaración y Control de ...
flekoso
Webinar: Groovy y la producttividad para el desarrollador Java
Webinar: Groovy y la producttividad para el desarrollador Java
Domingo Suarez Torres
Kde4 Se Libre
Kde4 Se Libre
campus party
NetBeans - El único IDE que necesitas
NetBeans - El único IDE que necesitas
Felipe Cerda
Netbeans ide 7.2(2)
Netbeans ide 7.2(2)
Rodrigo Torres
Netbeans ide 7.2(2)
Netbeans ide 7.2(2)
Lilián Torres
7 Recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...
7 Recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...
César Hernández
Jobsket Spring 2GX Madrid
Jobsket Spring 2GX Madrid
Jobsket
Semelhante a Intro a Grails @ ITESCA
(20)
grails.org.mx Primera Reunion
grails.org.mx Primera Reunion
Taller Groovy
Taller Groovy
Eleva tu capacidad con Groovy
Eleva tu capacidad con Groovy
Introducción a Java FX
Introducción a Java FX
Vaadin y Grails Barcamp 2013
Vaadin y Grails Barcamp 2013
GraalVM - MálagaJUG 2018-11-29
GraalVM - MálagaJUG 2018-11-29
Desarrollando aplicaciones web con Zope 3
Desarrollando aplicaciones web con Zope 3
JAVA3.0
JAVA3.0
Java 9, 10, 11 ,12, 13 and more
Java 9, 10, 11 ,12, 13 and more
Construccion de proyectos con gradle
Construccion de proyectos con gradle
Groovy y Grails, y la pastilla roja
Groovy y Grails, y la pastilla roja
Programacion Web UGR - Tema 7.pdf
Programacion Web UGR - Tema 7.pdf
SCJP, Clase 1: Introducción al curso, Intro a Java, Declaración y Control de ...
SCJP, Clase 1: Introducción al curso, Intro a Java, Declaración y Control de ...
Webinar: Groovy y la producttividad para el desarrollador Java
Webinar: Groovy y la producttividad para el desarrollador Java
Kde4 Se Libre
Kde4 Se Libre
NetBeans - El único IDE que necesitas
NetBeans - El único IDE que necesitas
Netbeans ide 7.2(2)
Netbeans ide 7.2(2)
Netbeans ide 7.2(2)
Netbeans ide 7.2(2)
7 Recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...
7 Recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...
Jobsket Spring 2GX Madrid
Jobsket Spring 2GX Madrid
Mais de Domingo Suarez Torres
Cloud Native MX Meetup - Asegurando tu Cluster de Kubernetes
Cloud Native MX Meetup - Asegurando tu Cluster de Kubernetes
Domingo Suarez Torres
Java Dev Day 2019 No kuberneteen por convivir
Java Dev Day 2019 No kuberneteen por convivir
Domingo Suarez Torres
Contenedores 101 Digital Ocean CDMX
Contenedores 101 Digital Ocean CDMX
Domingo Suarez Torres
Retos en la arquitectura de Microservicios
Retos en la arquitectura de Microservicios
Domingo Suarez Torres
Java Cloud Native Hack Nights GDL
Java Cloud Native Hack Nights GDL
Domingo Suarez Torres
meetup digital ocean kubernetes
meetup digital ocean kubernetes
Domingo Suarez Torres
Peru JUG Micronaut & GraalVM
Peru JUG Micronaut & GraalVM
Domingo Suarez Torres
DevFest Lima Corriendo cargas e trabajo seguras en GKE con Istio
DevFest Lima Corriendo cargas e trabajo seguras en GKE con Istio
Domingo Suarez Torres
Cloud Native Development in the JVM
Cloud Native Development in the JVM
Domingo Suarez Torres
Cloud Native Mexico - Introducción a Kubernetes
Cloud Native Mexico - Introducción a Kubernetes
Domingo Suarez Torres
Meetup DigitalOcean Cloud Native architecture
Meetup DigitalOcean Cloud Native architecture
Domingo Suarez Torres
Cloud Native Mexico Meetup de Marzo 2018 Service Mesh con Istio y Envoy
Cloud Native Mexico Meetup de Marzo 2018 Service Mesh con Istio y Envoy
Domingo Suarez Torres
Cloud Native Mexico Meetup enero 2018 Observability
Cloud Native Mexico Meetup enero 2018 Observability
Domingo Suarez Torres
Cloud Native Mexico Presentacion
Cloud Native Mexico Presentacion
Domingo Suarez Torres
gRPC: Beyond REST
gRPC: Beyond REST
Domingo Suarez Torres
Devops Landscape
Devops Landscape
Domingo Suarez Torres
Orquestación de contenedores con Kubernetes SGNext
Orquestación de contenedores con Kubernetes SGNext
Domingo Suarez Torres
JVM Reactive Programming
JVM Reactive Programming
Domingo Suarez Torres
SGNext Elasticsearch
SGNext Elasticsearch
Domingo Suarez Torres
Webinar Arquitectura de Microservicios
Webinar Arquitectura de Microservicios
Domingo Suarez Torres
Mais de Domingo Suarez Torres
(20)
Cloud Native MX Meetup - Asegurando tu Cluster de Kubernetes
Cloud Native MX Meetup - Asegurando tu Cluster de Kubernetes
Java Dev Day 2019 No kuberneteen por convivir
Java Dev Day 2019 No kuberneteen por convivir
Contenedores 101 Digital Ocean CDMX
Contenedores 101 Digital Ocean CDMX
Retos en la arquitectura de Microservicios
Retos en la arquitectura de Microservicios
Java Cloud Native Hack Nights GDL
Java Cloud Native Hack Nights GDL
meetup digital ocean kubernetes
meetup digital ocean kubernetes
Peru JUG Micronaut & GraalVM
Peru JUG Micronaut & GraalVM
DevFest Lima Corriendo cargas e trabajo seguras en GKE con Istio
DevFest Lima Corriendo cargas e trabajo seguras en GKE con Istio
Cloud Native Development in the JVM
Cloud Native Development in the JVM
Cloud Native Mexico - Introducción a Kubernetes
Cloud Native Mexico - Introducción a Kubernetes
Meetup DigitalOcean Cloud Native architecture
Meetup DigitalOcean Cloud Native architecture
Cloud Native Mexico Meetup de Marzo 2018 Service Mesh con Istio y Envoy
Cloud Native Mexico Meetup de Marzo 2018 Service Mesh con Istio y Envoy
Cloud Native Mexico Meetup enero 2018 Observability
Cloud Native Mexico Meetup enero 2018 Observability
Cloud Native Mexico Presentacion
Cloud Native Mexico Presentacion
gRPC: Beyond REST
gRPC: Beyond REST
Devops Landscape
Devops Landscape
Orquestación de contenedores con Kubernetes SGNext
Orquestación de contenedores con Kubernetes SGNext
JVM Reactive Programming
JVM Reactive Programming
SGNext Elasticsearch
SGNext Elasticsearch
Webinar Arquitectura de Microservicios
Webinar Arquitectura de Microservicios
Último
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
vladimiroflores1
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
mariacbr99
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
JohnRamos830530
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
AnnimoUno1
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
MiguelAtencio10
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
JorgeParada26
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
Maricarmen Sánchez Ruiz
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
Alan779941
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
sgonzalezp1
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
mcerpam
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
FlorenciaCattelani
Último
(11)
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
Intro a Grails @ ITESCA
1.
Agilidad en el
desarrollo empresarial (o de como hacer webapps sin tanto dolor)
2.
Disculpa a ITESCA •
Vi mal la hora del vuelo. • Lo perdí • Casi no llego, vengo corriendo del aeropuerto. • Pero ya estoy aquí :) © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
3.
Agenda • Groovy • Grails
• Arquitectura • Componentes • Como usar la plataforma • !!Código¡¡ • Recursos. © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
4.
Objetivo • Conocer y
aprender como simplificar el desarrollo web con Grails © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
5.
Sobre el ponente •
Domingo Suárez Torres • Ciencias de la Informática @ IPN-UPIICSA • Gerente de Desarrollo @ Bursatec • Asigna, Mercado de Derivados • CTO @ SynergyJ y de SeptimoBit Software • Apasionado por el desarrollo de software • Fundador de JavaUp.org, SpringHispano.org, Grails.org.mx © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
6.
Trasfondo • Desarrollador Java
desde 1999 • 7 años desarrollando aplicaciones JEE • Experiencia en sectores:Ventas, Construcción, Salud, Gobierno, Financiero. • Javero de hueso colorado. • Commiter en Codehaus • Desarrollador de plugins de Grails © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
7.
Java Plataforma
políglota • Java • Groovy • Scala • Erlang • JRuby • Jython • JavaFX © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
8.
¿Que es Groovy? •
Groovy es un lenguaje ágil y dinámico para la Máquina Virtual de Java • Basado en los conceptos base del lenguage Java, incluye características inspiradas en otros lenguages como Python, Ruby y Smalltalk. • Habilita características de programación modernas con una curva de aprendizaje prácticamente plana para desarrolladores Java • Soporta Lenguajes de Dominio Específico y otras características de sintaxis corta © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
9.
¿Que es Groovy? •
Simplifica el ciclo de pruebas dado que soporta pruebas unitarias y mocking desde el inicio. • Se integra sin problemas con cualquier objeto y/o librería Java existentes • Compila directamente a código byte (igual que Java) puede ser usado virtualmente en cualquier lugar donde Java puede serlo también © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
10.
HolaMundo en Java public
class HelloWorld { String name; public void setName(String name) { this.name = name; } public String getName(){ return name; } public String greet(){ return “Hello “ + name; } public static void main(String args[]){ HelloWorld helloWorld = new HelloWorld() helloWorld.setName(“Groovy”) System.out.println( helloWorld.greet() ) } } © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
11.
HolaMundo en Groovy public
class HelloWorld { String name; public void setName(String name) { this.name = name; } public String getName(){ return name; } public String greet(){ return “Hello “ + name; } public static void main(String args[]){ HelloWorld helloWorld = new HelloWorld() helloWorld.setName(“Groovy”) System.out.println( helloWorld.greet() ) } } © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
12.
Manera Groovy ;) class
HelloWorld { String name def greet() { quot;Hello $namequot; } } def helloWorld = new HelloWorld(name:quot;Groovyquot;) println helloWorld.greet() © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
13.
Groovy casi Java •
Java es Groovy, Groovy es Java • Groovy ofrece una curva de aprendizaje sencilla para desarrolladores Java. Puedes empezar con sintaxis Java y moverte poco a poco a la sintaxis Groovy • 98% de código Java es código Groovy, virtualmente podrías renombrar un archivo *.java a .groovy y compilaría © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
14.
Groovy y Java
5 • Groovy soporta anotaciones (JSR 175) iguales a las de Java, es más, es el segundo lenguaje en la JVM que las soporta. ¿JavaFX? • hasta el momento no es posible definir anotaciones con Groovy • Groovy soporta Enums también • Por último también tiene habilitado el soporte de tipos genéricos, iguales a los de Java. © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
15.
Closures • Closures pueden
ser interpretados como bloques de código reusable, probablemente las hayas visto en otros lenguajes como JavaScript o Ruby • Closures substituyen a las clases internas en la mayoría de los casos • Groovy permite “forzar el tipo” de una Closure a una interface de un solo método (proxy) • Una closure tendrá un parámetro por omisión llamado “it” si es que no se definen parámetros para la misma © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
16.
Ejemplos de closures def
greet = { name -> println “Hello $name” } greet( “Groovy” ) // prints Hello Groovy def greet = { println “Hello $it” } greet( “Groovy” ) // prints Hello Groovy def iCanHaveTypedParametersToo = { int x, int y -> println “coordinates are ($x,$y)” } def myActionListener = { event -> // do something cool with event } as ActionListener © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
17.
Azúcar sintáctica: Toma
1 ¿No es adorable el Api de Collections? © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
18.
Azúcar sintáctica: Toma
2 © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
19.
Azúcar sintáctica: Toma
3 © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
20.
Detalles • Groovy es
leeentooo.... No tanto como les gustaría a los alarmistas. • Es cuestión de tiempo • Si necesitas velocidad, puedes recurrir a Java. • A veces no importa tanto © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
21.
¿Que es Grails? •
Mas que un framework, es una plataforma para desarrollo de aplicaciones web © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
22.
Plataforma Grails • Integra
componentes que van desde el sistema de construcción hasta la capa de acceso a base de datos. • El desarrollador programa en Groovy. • Basado en herramientas existentes y poderosas como: • Spring, Hibernate, Quartz, Sitemesh, etc. © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
23.
Plataforma Grails • Java
2 Enterprise Edition (J2EE, ahora JEE), es considerado muy complicado, más de lo necesario. • Spring y Hibernate han sido proyectos nacidos como Opensource que han mejorado la manera de desarrollar en Java. • Grails representa el siguiente nivel de abstracción para JEE. • Grails simplifica dramáticamente el uso de Spring y Hibernate. © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
24.
Spring como base •
Sus principales características • Sistema de extensiones basada en plugins • Entorno de configuración para ejecución • Todo lo anterior, construido sobre Spring. © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
25.
Bases solidas • Spring •
Hibernate • Groovy • Quartz • Sitemesh • Jetty • Apache Ant • Plataforma Java © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
26.
Arquitectura de Grails
27.
¿Por que Groovy
& Grails? • Todo el poder de frameworks de otras plataformas como RubyOnRails, Django • Basado en Tecnología Java, en desarrollo empresarial no hay alternativa. • Reuso de herramientas y tecnologías existentes • Caches Distribuidos • Herramientas para depuración,IDEs © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
28.
¿Por que Groovy
& Grails? • ¿Porque no? © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
29.
¿Como iniciar? • Instalar
un JDK para tu sistema operativo • Visitar http://grails.org y descargar la ultima versión estable. Se distribuye en Zip y TarGZ • Descomprimir el archivo • Establecer la variable de ambiente GRAILS_HOME y agregar a PATH el directorio bin de $GRAILS_HOME • Mayor detalle en: http://grails.org/Installation © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
30.
¿Como desarrollo una
aplicación? • Crear una aplicación y ejecutarla. • Analizar la estructura de directorios © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
31.
!!No te creo¡¡
© 2008 Domingo Suarez; disponible bajo CC-SA 2.5
32.
IDEs y otras
herramientas • Funciona muy bien con Eclipse • Mejor con IntelliJ IDEA • Plugin para NetBeans • Para minimalistas con Textmate • Ant • Maven © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
33.
Orden en Grails •
El principio de “Convención sobre configuración” • No significa que no exista la configuración • No confundir por “Convención en lugar de configuración” © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
34.
Estructura de proyecto
© 2008 Domingo Suarez; disponible bajo CC-SA 2.5
35.
Estructura Grails
© 2008 Domingo Suarez; disponible bajo CC-SA 2.5
36.
Seguimos con lo
básico El Modelo de dominio © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
37.
El modelo • Representa
una parte muy importante del problema que intentamos resolver. • En Grails, el modelo generalmente es “persistente”, es decir se almacena su estado. © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
38.
El modelo • Para
la persistencia se usa Hibernate. • Hibernate es un Mapeador Objeto- Relacional (ORM) • http://www.hibernate.org © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
39.
¿Como creo un
modelo? > grails create-domain-class Clase © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
40.
• Crear una
clase de dominio llamada Conferencista y otra Conferencia • Hacer el CRUD de esas clases con scaffolding dinámico. © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
41.
Scaffolding: No es
bala de plata • Dos tipo de andamiaje • Dinámico (El de la demo) • Estático (Necesario generar artefactos, es posible modificarlos al gusto) • Es una ayuda, no es la principal fortaleza de Grails. © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
42.
Consultas • ¿Se acuerdan
de los DAOs? © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
43.
Métodos dinámicos
© 2008 Domingo Suarez; disponible bajo CC-SA 2.5
44.
Más dinámicos...
© 2008 Domingo Suarez; disponible bajo CC-SA 2.5
45.
GORM © 2008 Domingo
Suarez; disponible bajo CC-SA 2.5
46.
Ecosistema Grails • La
comunidad esta creciendo mucho. • Gracias a la arquitectura de plugins de Grails, se puede extender la funcionalidad. • Existen mas de 50 plugins oficiales. • Seguridad • Interfases de usuario • WebServices © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
47.
Plugins • Vista
• Flex, con Blaze DataServices • YahooUI, ExtJS, GWT, • Spring WebFlow • WebServices (XFire, Axis, Metro) © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
48.
Despliegue • Grails genera
archivos WAR. • Se puedes desplegar en diversos servidores como: • Weblogic • Websphere • Tomcat • Jetty • SpringSource Application Platform © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
49.
¿Quien lo usa? •
LinkedIn • SAP • Tropicana • Sky • Más en: http://www.grails.org/Success+Stories © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
50.
Consejos • No lo
adoptes si no tienes experiencia en Hibernate y Spring • A menos que no tengas deadlines... © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
51.
SpringHispano.org
52.
Grails.org.mx
53.
Muestrame el código
© 2008 Domingo Suarez; disponible bajo CC-SA 2.5
54.
Proyectos • Coetus
• http://code.google.com/p/coetus/ • Geedback • http://code.google.com/p/geedback/ © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
55.
En la mira •
JBoss Seam • Basado en estándares JEE • JSF y JPA • Marcando la pauta de nuevas especificaciones como WebBeans • Para los amantes de anotaciones :) © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
56.
Agradecimientos • A mi
familia, que me dejo venir... • ITESCA © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
57.
Agradecimientos • Andres Almiray,
por las láminas de introducción a Groovy © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
58.
Resumen • Grails no
es solo un framework, es una plataforma de desarrollo web. • Grails es la próxima generación de abstracción de JEE basada en Spring y Hibernate. • Groovy y Grails se integran sin problemas al código Java existente y a toda la plataforma Java. • Grails == Simplificación de la plataforma JEE en web. © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
59.
Preguntas ©
2008 Domingo Suarez; disponible bajo CC-SA 2.5
60.
Recursos •
http://groovy.codehaus.org • http://grails.org • http://www.springhispano.org • http://groovy.org.es • http://grails.org.mx • http://www.javahispano.org • Podcast en SpringHispano.org y Grails.org.mx • http://www.domingosuarez.com • http://www.domix.org © 2008 Domingo Suarez; disponible bajo CC-SA 2.5
Baixar agora