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
並行開発のためのコードレビュー
miyukiw
0
250
副作用をどこに置くか問題:オブジェクト指向で整理する設計判断ツリー
koxya
1
610
Best-Practices-for-Cortex-Analyst-and-AI-Agent
ryotaroikeda
1
110
AWS re:Invent 2025参加 直前 Seattle-Tacoma Airport(SEA)におけるハードウェア紛失インシデントLT
tetutetu214
2
110
izumin5210のプロポーザルのネタ探し #tskaigi_msup
izumin5210
1
130
CSC307 Lecture 08
javiergs
PRO
0
670
Amazon Bedrockを活用したRAGの品質管理パイプライン構築
tosuri13
5
740
AIによる開発の民主化を支える コンテキスト管理のこれまでとこれから
mulyu
3
340
AI & Enginnering
codelynx
0
110
生成AIを使ったコードレビューで定性的に品質カバー
chiilog
1
270
KIKI_MBSD Cybersecurity Challenges 2025
ikema
0
1.3k
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
590
Featured
See All Featured
So, you think you're a good person
axbom
PRO
2
1.9k
Automating Front-end Workflow
addyosmani
1371
200k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
The Curse of the Amulet
leimatthew05
1
8.6k
Ethics towards AI in product and experience design
skipperchong
2
190
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
310
GitHub's CSS Performance
jonrohan
1032
470k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
66
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
97
Docker and Python
trallard
47
3.7k
Visualization
eitanlees
150
17k
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