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
Javier Ramírez Jr
June 12, 2013
Programming
3
160
Groovy Talk 2013 - javaMexico.org
Javier Ramírez Jr
June 12, 2013
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
60
Groovy & Grails 2012
benek
0
91
Charla sobre Testing
benek
1
110
Other Decks in Programming
See All in Programming
CSC307 Lecture 03
javiergs
PRO
1
470
React 19でつくる「気持ちいいUI」- 楽観的UIのすすめ
himorishige
11
5k
LLMで複雑な検索条件アセットから脱却する!! 生成的検索インタフェースの設計論
po3rin
4
1.1k
AtCoder Conference 2025
shindannin
0
920
JETLS.jl ─ A New Language Server for Julia
abap34
2
470
Combinatorial Interview Problems with Backtracking Solutions - From Imperative Procedural Programming to Declarative Functional Programming - Part 2
philipschwarz
PRO
0
140
Go コードベースの構成と AI コンテキスト定義
andpad
0
160
愛される翻訳の秘訣
kishikawakatsumi
3
370
ゆくKotlin くるRust
exoego
1
200
Giselleで作るAI QAアシスタント 〜 Pull Requestレビューに継続的QAを
codenote
0
340
これならできる!個人開発のすゝめ
tinykitten
PRO
0
150
生成AIを利用するだけでなく、投資できる組織へ
pospome
2
440
Featured
See All Featured
First, design no harm
axbom
PRO
2
1.1k
How GitHub (no longer) Works
holman
316
140k
Heart Work Chapter 1 - Part 1
lfama
PRO
4
35k
Making Projects Easy
brettharned
120
6.5k
Documentation Writing (for coders)
carmenintech
77
5.2k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Fireside Chat
paigeccino
41
3.8k
What's in a price? How to price your products and services
michaelherold
246
13k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
54
49k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
115
100k
Discover your Explorer Soul
emna__ayadi
2
1k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
74
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