SlideShare una empresa de Scribd logo
1 de 11
Descargar para leer sin conexión
Groovy Koans Daniel Latorre
- Co-fundador de Jobsket.com - Desarrollador independiente: Java/Groovy/Grails - Google Summer of Code 2008 - @dani_latorre  -  http://www.danilat.com - CV completo en  http://www.jobsket.es/cv/dani -  [email_address] ¿Quién soy?
Un  kōan  ( 公案 ; Japonés: kōan, Chino: gōng'àn) es, en la tradición zen, un problema que el maestro plantea al novicio para comprobar sus progresos. Muchas veces el kōan parece un problema absurdo, ilógico o banal. Para resolverlo el novicio debe desligarse del pensamiento racional y aumentar su nivel de conciencia para adivinar lo que en realidad le está preguntando el maestro, que trasciende al sentido literal de las palabras. http://es.wikipedia.org/wiki/Kōan ¿Koans?
-  http://github.com/cjudd/groovy_koans - Inspirado en Ruby Koans( http://rubykoans.com ) - Jim Shingler( http://jshingler.blogspot.com ) y Christopher M. Judd( http://juddsolutions.blogspot.com ) - Escritores de Beginning with Groovy & Grails - Evolución:  http://github.com/cjudd/groovy_koans/issues Groovy Koans
Groovy - Lenguaje dinámico para la JVM - Menos ceremonioso y más expresivo que Java - No hay tipos primitivos, todo son objetos - Compilado o script - Imports por defecto (java.util.*, java.io.*,...) - Compilación cruzada (Joint compilation) - El GDK extiende al JDK - Expandos y Meta Object Protocol
Artículos de introducción a Groovy -  http://groovy.org.es/home/story/89 -  http://groovy.org.es/home/story/99 -  http://groovy.org.es/home/story/128
¿Qué cubren los Groovy Koans? - La verdad en Groovy - Cadenas - Fechas - Rangos - Listas - Sobrecarga de operadores
¿Qué cubren el subconjunto seleccionado? Gran parte de: - La verdad en Groovy - Cadenas - Fechas - Rangos - Listas Nada de: - Sobrecarga de operadores
Dónde está el código - Si tienes git:  git clone git://github.com/danilat/groovy_koans.git  - Si no tienes git: tar.gz:  https://github.com/danilat/groovy_koans/tarball/master zip:  https://github.com/danilat/groovy_koans/zipball/master
Empecemos $ groovy AllKoans.groovy Much you will learn from the Groovy Koans. Much you have to learn. Study well the following from koans.TruthKoans.testTrueForTruth: expected:<FILL ME IN> but was:<true> Do or do not... there is no try. - Master Yoda
manos a la obra!

Más contenido relacionado

Similar a Groovy Koans - SpringIO 2011

Go, el lenguaje de google
Go, el lenguaje de googleGo, el lenguaje de google
Go, el lenguaje de googlebetabeers
 
Go, el lenguaje de Google
Go, el lenguaje de GoogleGo, el lenguaje de Google
Go, el lenguaje de GoogleJM Robles
 
Qué puede aprender Drupal de Plone
Qué puede aprender Drupal de PloneQué puede aprender Drupal de Plone
Qué puede aprender Drupal de Plonementtes
 
Grails: Aumenta tu productividad en tus aplicaciones web Java
Grails: Aumenta tu productividad en tus aplicaciones web JavaGrails: Aumenta tu productividad en tus aplicaciones web Java
Grails: Aumenta tu productividad en tus aplicaciones web JavaDani Latorre
 
Groovy&Grails: desarrollo rápido de aplicaciones
Groovy&Grails: desarrollo rápido de aplicacionesGroovy&Grails: desarrollo rápido de aplicaciones
Groovy&Grails: desarrollo rápido de aplicacionesFran García
 
Python y la POO, en una clase, UNNe-Corrientes
Python y la POO, en una clase, UNNe-CorrientesPython y la POO, en una clase, UNNe-Corrientes
Python y la POO, en una clase, UNNe-Corrientesalexis ibarra
 
GHOP - GSoC Campus Party 2008
GHOP - GSoC Campus Party 2008GHOP - GSoC Campus Party 2008
GHOP - GSoC Campus Party 2008Dani Latorre
 
JRuby: Ruby en un mundo enterprise RubyConf Uruguay 2011
JRuby: Ruby en un mundo enterprise RubyConf Uruguay 2011JRuby: Ruby en un mundo enterprise RubyConf Uruguay 2011
JRuby: Ruby en un mundo enterprise RubyConf Uruguay 2011Jano González
 
Android Tips & Tricks - Boosting your productivity
Android Tips & Tricks - Boosting your productivityAndroid Tips & Tricks - Boosting your productivity
Android Tips & Tricks - Boosting your productivityFe
 
Python con baterias incluídas
Python con baterias incluídasPython con baterias incluídas
Python con baterias incluídasj3nnn1
 
An Evening with... Go Lang
An Evening with... Go LangAn Evening with... Go Lang
An Evening with... Go LangArkhotech
 
Webinar: Groovy y la producttividad para el desarrollador Java
Webinar: Groovy y la producttividad para el desarrollador JavaWebinar: Groovy y la producttividad para el desarrollador Java
Webinar: Groovy y la producttividad para el desarrollador JavaDomingo Suarez Torres
 
Grails en Expo FISI 2011
Grails en Expo FISI 2011Grails en Expo FISI 2011
Grails en Expo FISI 2011jose diaz
 

Similar a Groovy Koans - SpringIO 2011 (20)

Go, el lenguaje de google
Go, el lenguaje de googleGo, el lenguaje de google
Go, el lenguaje de google
 
Go, el lenguaje de Google
Go, el lenguaje de GoogleGo, el lenguaje de Google
Go, el lenguaje de Google
 
Eleva tu capacidad con Groovy
Eleva tu capacidad con GroovyEleva tu capacidad con Groovy
Eleva tu capacidad con Groovy
 
Qué puede aprender Drupal de Plone
Qué puede aprender Drupal de PloneQué puede aprender Drupal de Plone
Qué puede aprender Drupal de Plone
 
Grails: Aumenta tu productividad en tus aplicaciones web Java
Grails: Aumenta tu productividad en tus aplicaciones web JavaGrails: Aumenta tu productividad en tus aplicaciones web Java
Grails: Aumenta tu productividad en tus aplicaciones web Java
 
grails.org.mx Primera Reunion
grails.org.mx Primera Reuniongrails.org.mx Primera Reunion
grails.org.mx Primera Reunion
 
Groovy&Grails: desarrollo rápido de aplicaciones
Groovy&Grails: desarrollo rápido de aplicacionesGroovy&Grails: desarrollo rápido de aplicaciones
Groovy&Grails: desarrollo rápido de aplicaciones
 
Taller Groovy
Taller GroovyTaller Groovy
Taller Groovy
 
Python y la POO, en una clase, UNNe-Corrientes
Python y la POO, en una clase, UNNe-CorrientesPython y la POO, en una clase, UNNe-Corrientes
Python y la POO, en una clase, UNNe-Corrientes
 
GHOP - GSoC Campus Party 2008
GHOP - GSoC Campus Party 2008GHOP - GSoC Campus Party 2008
GHOP - GSoC Campus Party 2008
 
JRuby: Ruby en un mundo enterprise RubyConf Uruguay 2011
JRuby: Ruby en un mundo enterprise RubyConf Uruguay 2011JRuby: Ruby en un mundo enterprise RubyConf Uruguay 2011
JRuby: Ruby en un mundo enterprise RubyConf Uruguay 2011
 
Android Tips & Tricks - Boosting your productivity
Android Tips & Tricks - Boosting your productivityAndroid Tips & Tricks - Boosting your productivity
Android Tips & Tricks - Boosting your productivity
 
El mundo se acaba en 2012
El mundo se acaba en 2012El mundo se acaba en 2012
El mundo se acaba en 2012
 
El mundo se acaba en el 2012
El mundo se acaba en el 2012El mundo se acaba en el 2012
El mundo se acaba en el 2012
 
Python con baterias incluídas
Python con baterias incluídasPython con baterias incluídas
Python con baterias incluídas
 
An Evening with... Go Lang
An Evening with... Go LangAn Evening with... Go Lang
An Evening with... Go Lang
 
JRuby Al Rescate J2EE
JRuby Al Rescate J2EEJRuby Al Rescate J2EE
JRuby Al Rescate J2EE
 
Webinar: Groovy y la producttividad para el desarrollador Java
Webinar: Groovy y la producttividad para el desarrollador JavaWebinar: Groovy y la producttividad para el desarrollador Java
Webinar: Groovy y la producttividad para el desarrollador Java
 
Grails en Expo FISI 2011
Grails en Expo FISI 2011Grails en Expo FISI 2011
Grails en Expo FISI 2011
 
Javascript
JavascriptJavascript
Javascript
 

Más de Dani Latorre

5 aniversario de Agile-Aragón
5 aniversario de Agile-Aragón5 aniversario de Agile-Aragón
5 aniversario de Agile-AragónDani Latorre
 
A falta de APIs buenas son tortas. XV Betabeers Zaragoza
A falta de APIs buenas son tortas. XV Betabeers ZaragozaA falta de APIs buenas son tortas. XV Betabeers Zaragoza
A falta de APIs buenas son tortas. XV Betabeers ZaragozaDani Latorre
 
Selenium como herramienta de Web Scraping
Selenium como herramienta de Web ScrapingSelenium como herramienta de Web Scraping
Selenium como herramienta de Web ScrapingDani Latorre
 
Vinalab, de visitas a clientes
Vinalab, de visitas a clientesVinalab, de visitas a clientes
Vinalab, de visitas a clientesDani Latorre
 
Cocina tu idea, crea tu producto
Cocina tu idea, crea tu productoCocina tu idea, crea tu producto
Cocina tu idea, crea tu productoDani Latorre
 
Testing en proyectos Grails del día a día. Greach 2013
Testing en proyectos Grails del día a día. Greach 2013Testing en proyectos Grails del día a día. Greach 2013
Testing en proyectos Grails del día a día. Greach 2013Dani Latorre
 
Agile Manifesto - EINA
Agile Manifesto - EINAAgile Manifesto - EINA
Agile Manifesto - EINADani Latorre
 
Como se hizo elDisparate.de
Como se hizo elDisparate.deComo se hizo elDisparate.de
Como se hizo elDisparate.deDani Latorre
 
Modulariza tus aplicaciones Grails - Springio 2012
Modulariza tus aplicaciones Grails - Springio 2012Modulariza tus aplicaciones Grails - Springio 2012
Modulariza tus aplicaciones Grails - Springio 2012Dani Latorre
 
Optimiza tus webs Grails. Greach 2011
Optimiza tus webs Grails. Greach 2011Optimiza tus webs Grails. Greach 2011
Optimiza tus webs Grails. Greach 2011Dani Latorre
 
Opendata - TheEvnt 2011
Opendata - TheEvnt 2011Opendata - TheEvnt 2011
Opendata - TheEvnt 2011Dani Latorre
 
Un poco más allá con grails. PrimerViernes
Un poco más allá con grails. PrimerViernesUn poco más allá con grails. PrimerViernes
Un poco más allá con grails. PrimerViernesDani Latorre
 

Más de Dani Latorre (14)

5 aniversario de Agile-Aragón
5 aniversario de Agile-Aragón5 aniversario de Agile-Aragón
5 aniversario de Agile-Aragón
 
A falta de APIs buenas son tortas. XV Betabeers Zaragoza
A falta de APIs buenas son tortas. XV Betabeers ZaragozaA falta de APIs buenas son tortas. XV Betabeers Zaragoza
A falta de APIs buenas son tortas. XV Betabeers Zaragoza
 
Selenium como herramienta de Web Scraping
Selenium como herramienta de Web ScrapingSelenium como herramienta de Web Scraping
Selenium como herramienta de Web Scraping
 
Vinalab, de visitas a clientes
Vinalab, de visitas a clientesVinalab, de visitas a clientes
Vinalab, de visitas a clientes
 
Cocina tu idea, crea tu producto
Cocina tu idea, crea tu productoCocina tu idea, crea tu producto
Cocina tu idea, crea tu producto
 
Testing en proyectos Grails del día a día. Greach 2013
Testing en proyectos Grails del día a día. Greach 2013Testing en proyectos Grails del día a día. Greach 2013
Testing en proyectos Grails del día a día. Greach 2013
 
Agile Manifesto - EINA
Agile Manifesto - EINAAgile Manifesto - EINA
Agile Manifesto - EINA
 
Agile Manifesto
Agile ManifestoAgile Manifesto
Agile Manifesto
 
Como se hizo elDisparate.de
Como se hizo elDisparate.deComo se hizo elDisparate.de
Como se hizo elDisparate.de
 
Modulariza tus aplicaciones Grails - Springio 2012
Modulariza tus aplicaciones Grails - Springio 2012Modulariza tus aplicaciones Grails - Springio 2012
Modulariza tus aplicaciones Grails - Springio 2012
 
Optimiza tus webs Grails. Greach 2011
Optimiza tus webs Grails. Greach 2011Optimiza tus webs Grails. Greach 2011
Optimiza tus webs Grails. Greach 2011
 
Opendata - TheEvnt 2011
Opendata - TheEvnt 2011Opendata - TheEvnt 2011
Opendata - TheEvnt 2011
 
Un poco más allá con grails. PrimerViernes
Un poco más allá con grails. PrimerViernesUn poco más allá con grails. PrimerViernes
Un poco más allá con grails. PrimerViernes
 
Taller Grails
Taller GrailsTaller Grails
Taller Grails
 

Último

Matriz de integración de tecnologías- Paola Carvajal.docx
Matriz de integración de tecnologías- Paola Carvajal.docxMatriz de integración de tecnologías- Paola Carvajal.docx
Matriz de integración de tecnologías- Paola Carvajal.docxPaolaCarolinaCarvaja
 
El diseño de Algoritmos Paralelos.pdf - analisis de algortimos
El diseño de Algoritmos Paralelos.pdf - analisis de algortimosEl diseño de Algoritmos Paralelos.pdf - analisis de algortimos
El diseño de Algoritmos Paralelos.pdf - analisis de algortimosLCristinaForchue
 
VIDEOS DE APOYO.docx E
VIDEOS DE APOYO.docx                                  EVIDEOS DE APOYO.docx                                  E
VIDEOS DE APOYO.docx Emialexsolar
 
TENDENCIAS DE IA Explorando el futuro de la tecnologia.pdf
TENDENCIAS DE IA Explorando el futuro de la tecnologia.pdfTENDENCIAS DE IA Explorando el futuro de la tecnologia.pdf
TENDENCIAS DE IA Explorando el futuro de la tecnologia.pdfJoseAlejandroPerezBa
 
Actividad 14_ Diseño de Algoritmos Paralelos.pdf
Actividad 14_ Diseño de Algoritmos Paralelos.pdfActividad 14_ Diseño de Algoritmos Paralelos.pdf
Actividad 14_ Diseño de Algoritmos Paralelos.pdfalejandrogomezescoto
 
Hazte partner: Club Festibity 2024 - 2025
Hazte partner: Club Festibity 2024 - 2025Hazte partner: Club Festibity 2024 - 2025
Hazte partner: Club Festibity 2024 - 2025Festibity
 
Presentación - Diseño de Algoritmos Paralelos - Grupo 2.pdf
Presentación - Diseño de Algoritmos Paralelos - Grupo 2.pdfPresentación - Diseño de Algoritmos Paralelos - Grupo 2.pdf
Presentación - Diseño de Algoritmos Paralelos - Grupo 2.pdfymiranda2
 
Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...
Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...
Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...RaymondCode
 
Los mejores simuladores de circuitos electrónicos.pdf
Los mejores simuladores de circuitos electrónicos.pdfLos mejores simuladores de circuitos electrónicos.pdf
Los mejores simuladores de circuitos electrónicos.pdfodalistar77
 
De Código a Ejecución: El Papel Fundamental del MSIL en .NET
De Código a Ejecución: El Papel Fundamental del MSIL en .NETDe Código a Ejecución: El Papel Fundamental del MSIL en .NET
De Código a Ejecución: El Papel Fundamental del MSIL en .NETGermán Küber
 
Inmersión global en ciberseguridad e IA en la conferencia RSA.pdf
Inmersión global en ciberseguridad e IA en la conferencia RSA.pdfInmersión global en ciberseguridad e IA en la conferencia RSA.pdf
Inmersión global en ciberseguridad e IA en la conferencia RSA.pdfOBr.global
 
Inteligencia artificial dentro de la contabilidad
Inteligencia artificial dentro de la contabilidadInteligencia artificial dentro de la contabilidad
Inteligencia artificial dentro de la contabilidaddanik1023m
 

Último (14)

Matriz de integración de tecnologías- Paola Carvajal.docx
Matriz de integración de tecnologías- Paola Carvajal.docxMatriz de integración de tecnologías- Paola Carvajal.docx
Matriz de integración de tecnologías- Paola Carvajal.docx
 
El diseño de Algoritmos Paralelos.pdf - analisis de algortimos
El diseño de Algoritmos Paralelos.pdf - analisis de algortimosEl diseño de Algoritmos Paralelos.pdf - analisis de algortimos
El diseño de Algoritmos Paralelos.pdf - analisis de algortimos
 
VIDEOS DE APOYO.docx E
VIDEOS DE APOYO.docx                                  EVIDEOS DE APOYO.docx                                  E
VIDEOS DE APOYO.docx E
 
BEDEC Sostenibilidad, novedades 2024 - Laura Silva
BEDEC Sostenibilidad, novedades 2024 - Laura SilvaBEDEC Sostenibilidad, novedades 2024 - Laura Silva
BEDEC Sostenibilidad, novedades 2024 - Laura Silva
 
TENDENCIAS DE IA Explorando el futuro de la tecnologia.pdf
TENDENCIAS DE IA Explorando el futuro de la tecnologia.pdfTENDENCIAS DE IA Explorando el futuro de la tecnologia.pdf
TENDENCIAS DE IA Explorando el futuro de la tecnologia.pdf
 
Actividad 14_ Diseño de Algoritmos Paralelos.pdf
Actividad 14_ Diseño de Algoritmos Paralelos.pdfActividad 14_ Diseño de Algoritmos Paralelos.pdf
Actividad 14_ Diseño de Algoritmos Paralelos.pdf
 
Hazte partner: Club Festibity 2024 - 2025
Hazte partner: Club Festibity 2024 - 2025Hazte partner: Club Festibity 2024 - 2025
Hazte partner: Club Festibity 2024 - 2025
 
Presentación - Diseño de Algoritmos Paralelos - Grupo 2.pdf
Presentación - Diseño de Algoritmos Paralelos - Grupo 2.pdfPresentación - Diseño de Algoritmos Paralelos - Grupo 2.pdf
Presentación - Diseño de Algoritmos Paralelos - Grupo 2.pdf
 
Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...
Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...
Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...
 
Los mejores simuladores de circuitos electrónicos.pdf
Los mejores simuladores de circuitos electrónicos.pdfLos mejores simuladores de circuitos electrónicos.pdf
Los mejores simuladores de circuitos electrónicos.pdf
 
De Código a Ejecución: El Papel Fundamental del MSIL en .NET
De Código a Ejecución: El Papel Fundamental del MSIL en .NETDe Código a Ejecución: El Papel Fundamental del MSIL en .NET
De Código a Ejecución: El Papel Fundamental del MSIL en .NET
 
BEDEC Proyecto y obra , novedades 2024 - Xavier Folch
BEDEC Proyecto y obra , novedades 2024 - Xavier FolchBEDEC Proyecto y obra , novedades 2024 - Xavier Folch
BEDEC Proyecto y obra , novedades 2024 - Xavier Folch
 
Inmersión global en ciberseguridad e IA en la conferencia RSA.pdf
Inmersión global en ciberseguridad e IA en la conferencia RSA.pdfInmersión global en ciberseguridad e IA en la conferencia RSA.pdf
Inmersión global en ciberseguridad e IA en la conferencia RSA.pdf
 
Inteligencia artificial dentro de la contabilidad
Inteligencia artificial dentro de la contabilidadInteligencia artificial dentro de la contabilidad
Inteligencia artificial dentro de la contabilidad
 

Groovy Koans - SpringIO 2011

  • 2. - Co-fundador de Jobsket.com - Desarrollador independiente: Java/Groovy/Grails - Google Summer of Code 2008 - @dani_latorre - http://www.danilat.com - CV completo en http://www.jobsket.es/cv/dani - [email_address] ¿Quién soy?
  • 3. Un kōan ( 公案 ; Japonés: kōan, Chino: gōng'àn) es, en la tradición zen, un problema que el maestro plantea al novicio para comprobar sus progresos. Muchas veces el kōan parece un problema absurdo, ilógico o banal. Para resolverlo el novicio debe desligarse del pensamiento racional y aumentar su nivel de conciencia para adivinar lo que en realidad le está preguntando el maestro, que trasciende al sentido literal de las palabras. http://es.wikipedia.org/wiki/Kōan ¿Koans?
  • 4. - http://github.com/cjudd/groovy_koans - Inspirado en Ruby Koans( http://rubykoans.com ) - Jim Shingler( http://jshingler.blogspot.com ) y Christopher M. Judd( http://juddsolutions.blogspot.com ) - Escritores de Beginning with Groovy & Grails - Evolución: http://github.com/cjudd/groovy_koans/issues Groovy Koans
  • 5. Groovy - Lenguaje dinámico para la JVM - Menos ceremonioso y más expresivo que Java - No hay tipos primitivos, todo son objetos - Compilado o script - Imports por defecto (java.util.*, java.io.*,...) - Compilación cruzada (Joint compilation) - El GDK extiende al JDK - Expandos y Meta Object Protocol
  • 6. Artículos de introducción a Groovy - http://groovy.org.es/home/story/89 - http://groovy.org.es/home/story/99 - http://groovy.org.es/home/story/128
  • 7. ¿Qué cubren los Groovy Koans? - La verdad en Groovy - Cadenas - Fechas - Rangos - Listas - Sobrecarga de operadores
  • 8. ¿Qué cubren el subconjunto seleccionado? Gran parte de: - La verdad en Groovy - Cadenas - Fechas - Rangos - Listas Nada de: - Sobrecarga de operadores
  • 9. Dónde está el código - Si tienes git: git clone git://github.com/danilat/groovy_koans.git - Si no tienes git: tar.gz: https://github.com/danilat/groovy_koans/tarball/master zip: https://github.com/danilat/groovy_koans/zipball/master
  • 10. Empecemos $ groovy AllKoans.groovy Much you will learn from the Groovy Koans. Much you have to learn. Study well the following from koans.TruthKoans.testTrueForTruth: expected:<FILL ME IN> but was:<true> Do or do not... there is no try. - Master Yoda
  • 11. manos a la obra!