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 Talk 2013 - javaMexico.org
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Javier Ramírez Jr
June 12, 2013
Programming
160
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Groovy Talk 2013 - javaMexico.org
Javier Ramírez Jr
June 12, 2013
More Decks by Javier Ramírez Jr
See All by Javier Ramírez Jr
El Futuro de Java, Cloud y AI
benek
0
37
Resilient Architecture Simplified - Isabel Palomar - @javaMexico
benek
0
66
Groovy & Grails 2012
benek
0
98
Charla sobre Testing
benek
1
120
Other Decks in Programming
See All in Programming
dRuby over BLE
makicamel
2
340
Vue × Nuxt × Oxc どこまで使える?実運用の現在地
andpad
0
250
キャリア迷子上等 ─ "ない道"は自分で作ればいい
16bitidol
3
2.1k
Spring Security 実践 ─ GraphQL APIで実務に役立つ 認証・認可 を学ぶ
wagyu
0
230
Signal Forms: Details & Live Coding @enterJS 2026 in Mannheim
manfredsteyer
PRO
0
130
ふつうのFeature Flag実践入門
irof
7
3.9k
AI時代の仕事技芸論 — ソフトウェア開発で「遊ぶように働く」職人的熟達のすすめ
kuranuki
2
670
TSKaigi Night Talks 2026_TypeScriptでサプライチェーンの整合性を型に閉じ込める
geekplus_tech
0
350
AIで効率化できた業務・日常
ochtum
0
130
Dataformのリポジトリを立ち上げるときにまずやること / dataform-day0-2026
snhryt
0
160
ローカルLLMでどこまでコードが書けるか -拡張版 / How much code can be written on a local LLM Extended
kishida
10
4.1k
「AIで開発し、AIを届ける」をEvalでつなぐ 〜AIネイティブに始めるプロダクト開発の実践〜 / Connecting "Develop with AI, deliver AI" with Eval
rkaga
4
5.1k
Featured
See All Featured
Done Done
chrislema
186
16k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
460
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
390
The SEO identity crisis: Don't let AI make you average
varn
0
490
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
530
RailsConf 2023
tenderlove
30
1.5k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
360
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
280
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
590
Java REST API Framework Comparison - PWX 2021
mraible
34
9.4k
Git: the NoSQL Database
bkeepers
PRO
432
67k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.3k
Transcript
Groovy Language
Javier Ramírez javaMexico.org Founder COO and Co-Founder @ SintelTI @_benek
on Twitter Who am I?
¿Groovy?
¿Groovy?
¿Groovy?
None
None
programming language for the JVM
Java Lang Bytecode
Java Lang Bytecode Jython JRuby Scala Clojure Groovy +250...
... +250
= ¿?
= Java
= Super Java
= Java + Esteroids
Object Oriented Dynamic Compact Inspired by Ruby, Python, Perl, Smalltalk,
Java Features
“Hello World”
“Hello Cruel World”
Java
Groovy
Groovy takes care of your Java knowledge But you can
write with “the groovy way”
Groovy
Groovy
Groovy
Groovy
Groovy optional semicolon
Avoid concatenation “Hello “ + name;
Avoid concatenation “Hello “ + name;
Avoid concatenation “Hello “ + name; “Hello $name”
you don’t need to “return” The last value or expresion
will be returned by Groovy
avoid parentheses in many methods println “Hello $name”
“def” keyword avoids declaring type, type will be inferred dynamic
typing
The Groovy way...
Groovy can run code like in a script scripting
Groovy can run code like in a script scripting
Native support for collections List, Maps, Arrays
Native support for collections List, Maps, Arrays
Groovy Ranges
Groovy Ranges
Groovy Ranges
Maps
Maps
spread-dot operator invoke a method which iterates through all items
of a collection
spread-dot operator invoke a method which iterates through all items
of a collection
Advanced Features Closures Metaprogramming AST transformations
A closure... anonymous code block that can be assigned to
a variable
A closure...
A closure...
A closure...
A closure...
Metaprogramming Ability to add methods and properties at runtime
Metaprogramming times() method in Integer? this behaviour is added by
Groovy at runtime
Metaprogramming
más info... groovy.codehaus.org javamexico.org
¡Gracias!
Javier Ramírez Jr www.javamexico.org www.sintelti.com.mx twitter: @_beneK