Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Groovy & Grails 2012
Search
Javier Ramírez Jr
November 23, 2012
Programming
0
91
Groovy & Grails 2012
Slides de la conferencia impartida en los Congresos del ITLC e ITQ 2011-2012.
Javier Ramírez Jr
November 23, 2012
Tweet
Share
More Decks by Javier Ramírez Jr
See All by Javier Ramírez Jr
El Futuro de Java, Cloud y AI
benek
0
31
Resilient Architecture Simplified - Isabel Palomar - @javaMexico
benek
0
61
Groovy Talk 2013 - javaMexico.org
benek
3
160
Charla sobre Testing
benek
1
110
Other Decks in Programming
See All in Programming
CSC307 Lecture 01
javiergs
PRO
0
690
CSC307 Lecture 09
javiergs
PRO
1
840
プロダクトオーナーから見たSOC2 _SOC2ゆるミートアップ#2
kekekenta
0
220
AIで開発はどれくらい加速したのか?AIエージェントによるコード生成を、現場の評価と研究開発の評価の両面からdeep diveしてみる
daisuketakeda
1
2.5k
Fluid Templating in TYPO3 14
s2b
0
130
Automatic Grammar Agreementと Markdown Extended Attributes について
kishikawakatsumi
0
200
AI & Enginnering
codelynx
0
110
生成AIを使ったコードレビューで定性的に品質カバー
chiilog
1
270
360° Signals in Angular: Signal Forms with SignalStore & Resources @ngLondon 01/2026
manfredsteyer
PRO
0
130
Grafana:建立系統全知視角的捷徑
blueswen
0
330
humanlayerのブログから学ぶ、良いCLAUDE.mdの書き方
tsukamoto1783
0
200
20260127_試行錯誤の結晶を1冊に。著者が解説 先輩データサイエンティストからの指南書 / author's_commentary_ds_instructions_guide
nash_efp
1
980
Featured
See All Featured
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
350
Technical Leadership for Architectural Decision Making
baasie
1
250
How to make the Groovebox
asonas
2
1.9k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Automating Front-end Workflow
addyosmani
1371
200k
Done Done
chrislema
186
16k
Building the Perfect Custom Keyboard
takai
2
690
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
83
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.4k
A Tale of Four Properties
chriscoyier
162
24k
Transcript
None
Grails Desarrollo ágil de aplicaciones web
None
Javier Ramírez (AKA Benek)
Founder javaMexico.org Javier Ramírez (AKA Benek)
Founder javaMexico.org Javier Ramírez Software Developer (AKA Benek)
Founder javaMexico.org Dir. de TI en Sintel TI Javier Ramírez
Software Developer (AKA Benek)
Founder javaMexico.org Dir. de TI en Sintel TI @_benek Javier
Ramírez Software Developer (AKA Benek)
www.javamexico.org
De qué va...
De qué va... • Java
De qué va... • Java • Groovy
De qué va... • Java • Groovy • Grails
“¿por qué debería interesarme?”
“¿por qué debería interesarme?”
•innovador = interesante “¿por qué debería interesarme?”
•innovador = interesante •esto no lo verán en clase “¿por
qué debería interesarme?”
¿Groovy?
¿Groovy?
¿Groovy?
lenguaje de programación para la JVM
¿En Java se pueden utilizar más lenguajes?
¿En Java se pueden utilizar más lenguajes? Sí.
¿cómo funciona?
¿cómo funciona? código en lenguaje x
¿cómo funciona? código en lenguaje x compilador o intérprete
¿cómo funciona? código en lenguaje x compilador o intérprete bytecode
¿cómo funciona? código en lenguaje x compilador o intérprete bytecode
máquina virtual (JVM)
... y cientos +
= ¿?
= Java
= Súper Java
= Java + Esteroides
Orientado a Objetos Dinámico Compacto Inspirado en Ruby, Python, Perl,
Smalltalk, Java Características
“Hola Mundo”
“Hola Mundo Cruel”
Java
Groovy
¿?
En Groovy, tu conocimiento de Java importa.
Groovy
Groovy
Groovy
Groovy
Groovy
Groovy El punto y coma es opcional
Groovy
¿Qué más podemos hacer con Groovy? ...
Evitar concatenación “Hola “ + nombre;
Evitar concatenación “Hola “ + nombre;
Evitar concatenación “Hola “ + nombre; “Hola $nombre”
“return” no es necesario Si la última línea es una
expresión, Groovy devuelve el valor por nosotros
evitar paréntesis en métodos println “Hola Mundo!”
Usando “def” no es necesario definir tipos de dato Tipos
dinámicos
Entonces...
Groovy también funciona como lenguaje para scripting ->
Así que...
Así que...
Java
Groovy
Groovy
•Closures •Meta-programación •AST Transformations Características avanzadas
Meta-programación en 60 segundos...
¡Grails!
Groovy on Rails
Groovy on Rails
Groovy on Rails Grails ->
Framework p/ construir aplicaciones web con Groovy
Alta productividad
¿Por qué la velocidad es importante?
¿Por qué la velocidad es importante?
Convention over Configuration
Convention over Configuration
Configuraciones comunes para la mayoría de los escenarios Convention over
Configuration
Funciona sobre los hombros de gigantes
Provee un entorno completo, preparado y listo para desarrollar Grails
1. JDK 5 o superior 2. Descargar: grails.org 3. GRAILS_HOME
Requerimientos
Por cuestiones de tiempo, no podremos crear un ejemplo ahora
mismo
Por cuestiones de tiempo, no podremos crear un ejemplo ahora
mismo
Por cuestiones de tiempo, no podremos crear un ejemplo ahora
mismo Dijimos que era rápido
Grails ya nos provee un entorno configurado Bootstrap i18n Unit
test DataSources ORM Logging Dependencias Ambientes Controllers Services Plugins
Grails ya nos provee un entorno configurado Bootstrap i18n Unit
test DataSources ORM Logging Dependencias Ambientes Controllers Services Plugins
Grails ya nos provee un entorno configurado Bootstrap i18n Unit
test DataSources ORM Logging Dependencias Ambientes Controllers Services Plugins Enterprise Stuff
Caso práctico Usando: Grails 2.1.1
scaffolding live class reloading H2 comandos
más info... grails.org/ Documentation
en español... grails.org.mx javamexico.org
¡Gracias!
Javier Ramírez Jr www.javamexico.org www.sintelti.com.mx Twitter: @_beneK