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
61
Groovy & Grails 2012
benek
0
91
Charla sobre Testing
benek
1
110
Other Decks in Programming
See All in Programming
責任感のあるCloudWatchアラームを設計しよう
akihisaikeda
3
180
AIエージェントのキホンから学ぶ「エージェンティックコーディング」実践入門
masahiro_nishimi
6
640
AgentCoreとHuman in the Loop
har1101
5
240
Oxlintはいいぞ
yug1224
5
1.4k
HTTPプロトコル正しく理解していますか? 〜かわいい猫と共に学ぼう。ฅ^•ω•^ฅ ニャ〜
hekuchan
2
690
MDN Web Docs に日本語翻訳でコントリビュート
ohmori_yusuke
0
650
今こそ知るべき耐量子計算機暗号(PQC)入門 / PQC: What You Need to Know Now
mackey0225
3
380
CSC307 Lecture 06
javiergs
PRO
0
690
なるべく楽してバックエンドに型をつけたい!(楽とは言ってない)
hibiki_cube
0
140
CSC307 Lecture 05
javiergs
PRO
0
500
LLM Observabilityによる 対話型音声AIアプリケーションの安定運用
gekko0114
2
440
2026年 エンジニアリング自己学習法
yumechi
0
140
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.3k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
340
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
Writing Fast Ruby
sferik
630
62k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.1k
Practical Orchestrator
shlominoach
191
11k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
0
440
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
220
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
Designing Powerful Visuals for Engaging Learning
tmiket
0
240
The SEO identity crisis: Don't let AI make you average
varn
0
330
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
64
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