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
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
38
Resilient Architecture Simplified - Isabel Palomar - @javaMexico
benek
0
68
Groovy & Grails 2012
benek
0
99
Charla sobre Testing
benek
1
120
Other Decks in Programming
See All in Programming
関東Kaggler会_NVIDIA_Nemotron_コンペ_振り返り
rick_ds
0
560
全PRの83%がAIレビューだけでマージできるようになった開発組織はその後どうなったか
athug
1
1.6k
進化を続けるGo toolsの現在地 / The Current State of Ever-Evolving Go Tools
hond0413
0
220
仕様駆動開発へのトライを機に チームに適合する手法を模索し続けている話
freee
PRO
0
500
ここ半年くらいでAIに作らせたR用ツール
eitsupi
0
380
そこに3びきプロダクトがいるじゃろう——生成AI時代における“価値が届かない理由”の構造
kosuket
0
480
運用ダッシュボードの設計を誰も教えてくれないのだけどみなさんどうしてるんですか? - チームに監視するという文化を根付かせるための第一歩を踏みたい -
satoshi256kbyte
1
120
夏だ!祭りだ!祭りとはドメインモデリングでは?
ryugen04
0
270
Flow は今どうなっているか
mizdra
PRO
0
480
AI Engineeringは、AIプロダクトだけのものか? 〜AIがソフトウェアを作る時代の新しい当たり前〜 / No AI in your product. AI Engineering in your development.
rkaga
4
430
SlackアプリとLambdaの 連携を構築した話
pawn_4_s
1
120
Japan Community Day at Kubecon + CloudNativeCon Japan 2026: Learning Container Privilege Control by Building My Own Low-Level Container Runtime
ternbusty
1
150
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.8k
Mobile First: as difficult as doing things right
swwweet
225
10k
Producing Creativity
orderedlist
PRO
348
40k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4.2k
Fireside Chat
paigeccino
42
4k
Exploring anti-patterns in Rails
aemeredith
3
460
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.5k
Crafting Experiences
bethany
1
250
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
460
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
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