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
88
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
Resilient Architecture Simplified - Isabel Palomar - @javaMexico
benek
0
58
Groovy Talk 2013 - javaMexico.org
benek
3
150
Charla sobre Testing
benek
1
110
Other Decks in Programming
See All in Programming
PHPで始める振る舞い駆動開発(Behaviour-Driven Development)
ohmori_yusuke
2
190
たった 1 枚の PHP ファイルで実装する MCP サーバ / MCP Server with Vanilla PHP
okashoi
1
180
GoのGenericsによるslice操作との付き合い方
syumai
3
690
Java on Azure で LangGraph!
kohei3110
0
170
なんとなくわかった気になるブロックテーマ入門/contents.nagoya 2025 6.28
chiilog
1
210
WindowInsetsだってテストしたい
ryunen344
1
190
Gleamという選択肢
comamoca
6
760
Cline指示通りに動かない? AI小説エージェントで学ぶ指示書の書き方と自動アップデートの仕組み
kamomeashizawa
1
570
GitHub Copilot and GitHub Codespaces Hands-on
ymd65536
1
120
生成AIコーディングとの向き合い方、AIと共創するという考え方 / How to deal with generative AI coding and the concept of co-creating with AI
seike460
PRO
1
330
Systèmes distribués, pour le meilleur et pour le pire - BreizhCamp 2025 - Conférence
slecache
0
100
AIエージェントはこう育てる - GitHub Copilot Agentとチームの共進化サイクル
koboriakira
0
380
Featured
See All Featured
Java REST API Framework Comparison - PWX 2021
mraible
31
8.6k
Side Projects
sachag
455
42k
Visualization
eitanlees
146
16k
Designing Experiences People Love
moore
142
24k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
281
13k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
5
210
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
It's Worth the Effort
3n
185
28k
Git: the NoSQL Database
bkeepers
PRO
430
65k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.3k
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