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
XTend: A language made for Java developers
Search
MadridJUG
October 15, 2012
Programming
0
360
XTend: A language made for Java developers
MadridJUG
October 15, 2012
Tweet
Share
More Decks by MadridJUG
See All by MadridJUG
Introducción a Scala
madridjug
3
500
Gradle: un moderno sistema de build para la JVM
madridjug
2
250
Introducción a la minería de datos con R y WEKA
madridjug
0
740
REST para móviles en tiempo real: trabajando al milisegundo
madridjug
0
130
Rapid and Reliable Developing with HTML5 & GWT
madridjug
1
170
Reflection Madness (contenidos de Java Specialist)
madridjug
2
110
JBoss Forge 101
madridjug
2
150
Lessons learned with Akka
madridjug
1
140
Gestión de gemas y jars en JRuby con Maven
madridjug
0
98
Other Decks in Programming
See All in Programming
プロダクト横断分析に役立つ、事前集計しないサマリーテーブル設計
hanon52_
2
390
PHPバージョンアップから始めるOSSコントリビュート / how2oss-contribute
dmnlk
1
990
Ruby's Line Breaks
yui_knk
2
480
AIコーディングワークフローの試行 〜AIエージェント×ワークフローでの自動化を目指して〜
rkaga
2
3.4k
Bedrock×MCPで社内ブログ執筆文化を育てたい!
har1101
6
900
List とは何か? / PHPerKaigi 2025
meihei3
0
710
リアルタイムレイトレーシング + ニューラルレンダリング簡単紹介 / Real-Time Ray Tracing & Neural Rendering: A Quick Introduction (2025)
shocker_0x15
1
290
Building Scalable Mobile Projects: Fast Builds, High Reusability and Clear Ownership
cyrilmottier
2
260
remix + cloudflare workers (DO) docker上でいい感じに開発する
yoshidatomoaki
0
130
Empowering Developers with HTML-Aware ERB Tooling @ RubyKaigi 2025, Matsuyama, Ehime
marcoroth
1
240
Deoptimization: How YJIT Speeds Up Ruby by Slowing Down / RubyKaigi 2025
k0kubun
0
500
Devinのメモリ活用の学びを自社サービスにどう組み込むか?
itarutomy
0
2.1k
Featured
See All Featured
What's in a price? How to price your products and services
michaelherold
245
12k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
2.9k
RailsConf 2023
tenderlove
30
1.1k
How GitHub (no longer) Works
holman
314
140k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.8k
BBQ
matthewcrist
88
9.6k
The Language of Interfaces
destraynor
157
24k
The Cult of Friendly URLs
andyhume
78
6.3k
It's Worth the Effort
3n
184
28k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.4k
Adopting Sorbet at Scale
ufuk
76
9.3k
Testing 201, or: Great Expectations
jmmastey
42
7.4k
Transcript
A language made for Java developers @jerolba
[email protected]
None
None
Origen XPand
¿Y en mi IDE? SIN SOPORTE :(
pero.... ..siempre nos quedará:
Características •Es un DSL •Genera código Java, no bytecode •Es
100% compatible con Java •Usa todo el sistema de tipos de Java •Interoperable •Programación Funcional •Creación de DSLs
Desarrollo ClaseA.xtend ClaseA.java ClaseB.java Generación de código Compilación ClaseA.class ClaseB.class
App.war Empaquetado XTend Runtime (100KBs)
¿Por qué lo usaría? •Scala es muy complejo y curva
de aprendizaje elevada •Por las closures, no puedo esperar a la JDK8 •Excelente soporte del IDE •Mi plataforma destino tiene recursos limitados
Hola Mundo
Una clase Privado por defecto Constructor Declaración de método Todo
son expresiones Herencia simple Público por defecto ; opcional
Atributos Privado por defecto Tipo String inferido int inferido variable
final
Extension methods I
Extension methods II
Extension Fields
@Property
Lambdas X X
Funciones Primera Clase Cachis! f(value)
Un poco más sencillo Cachis! f(value)
Un poco más funcional!
Funciones parciales
Test de aceptación
Gracias! • XTend • Documentación • Google Group • JNairo
• 20 Facts about Xtend • http://c.funius.com/xtend