Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Groovy: Un nombre tonto para una palanca de productividad sobre Java

1,717 views

Published on

Transparencias de base de la charla ofrecida por Jorge Uriarte durante el BilboStack (http://bilbostack.com) del 2 de Junio de 2012.

¿Hasta que punto está nuestro pensamiento influido por nuestro lenguaje? ¿Hasta qué punto lo están nuestras soluciones técnicas por los lenguajes de programación que conocemos?

¿Qué aporta Groovy al programador Java? ¿Qué aporta Grails? E, independientemente de esta pequeña introducción a Groovy... ¿por qué debemos estar siempre hambrientos de aprender nuevos lenguajes y plataformas?

Published in: Technology
  • Be the first to comment

Groovy: Un nombre tonto para una palanca de productividad sobre Java

  1. 1. GroovyUn nombre tonto para una palanca de productividad sobre Java Jorge Uriarte Aretxaga @jorgeuriarte 2 de Junio de 2012
  2. 2. Demographics... ¿Edad? ¿Experiencia profesional? ¿Conocimientos en Java? ¿Spring?¿Conocimientos en Groovy / Grails? ¿Ruby / Rails? ¿Python?
  3. 3. ¿Por qué preocuparnos por el lenguaje de programación?
  4. 4. Hipótesis de Sapir-Whorf • Fuerte: El lenguaje que utilizamos, y aprendemos desde niños, determina fuertemente nuestro pensamiento.
  5. 5. Hipótesis de Sapir-Whorf • Debil: Existen diferencias estadísticamente significativas en la forma en que los hablantes de distintas lenguas afrontan o resuelven los mismos problemas.
  6. 6. “A language that doesn’t affectthe way you think about programming is not worth knowing.” “Epigrams in programming #19” Alan Perlis (1922 - 1990) http://www.cs.yale.edu/quotes.html
  7. 7. Groovy: Un nombre tonto
  8. 8. ¿Qué aporta groovy?
  9. 9. Lenguaje dinámico para la JVM• JRuby, JPython, Scala, ...
  10. 10. Mejoras en el lenguaje• Tipos dinámicos• Closures• Sintáxis nativa para colecciones• Builders• Soporte para DSLs• Metaprogramación y transformación AST
  11. 11. Tipos dinámicos
  12. 12. Tipos dinámicos
  13. 13. Closures
  14. 14. Closures
  15. 15. Colecciones nativas
  16. 16. Colecciones nativas
  17. 17. Colecciones nativas
  18. 18. Builders
  19. 19. Builders
  20. 20. DSLshttp://www.intelligrape.com/blog/2012/03/22/writing-sentences-with-groovy-2-0/
  21. 21. DSLshttp://www.intelligrape.com/blog/2012/03/22/writing-sentences-with-groovy-2-0/
  22. 22. DSLshttp://www.intelligrape.com/blog/2012/03/22/writing-sentences-with-groovy-2-0/
  23. 23. DSLshttp://www.intelligrape.com/blog/2012/03/22/writing-sentences-with-groovy-2-0/
  24. 24. Integración completa Java <> Groovy• Compilador conjunto• Runtime compartido• Acceso libre a todo el ecosistema
  25. 25. Fullstack• Spring framework preconfigurado• Spring MVC, sitemesh, ...• GORM - Magia en la persistencia• Hibernate, redis, mongodb, ...• JSON, WS, remoting, ...• Entorno de desarrollo completo
  26. 26. Convención sobre Configuración
  27. 27. Muy vendible• Soporte financiero VMWare• Comunidad muy activa• Integración empresarial
  28. 28. Todo framework envuelve una complejidad que semanifestará, de una u otra forma, en las capas superiores
  29. 29. “La magia existe, pero *todo* tiene un precio. Hay que conocer el precio antes de ejercer el poder.”
  30. 30. Areframeworks EVIL?
  31. 31. Areframeworks EVIL?
  32. 32. http://www.oneworldmanypeaces.com/one_world_many_peaces/books/
  33. 33. http://www.oneworldmanypeaces.com/one_world_many_peaces/books/
  34. 34. No necesitas tests
  35. 35. No necesitas tests
  36. 36. No necesitas tests Mira ama, ¡sin manos!
  37. 37. No necesitas tests Mira ama, ¡sin manos!
  38. 38. No necesitas tests Mira ama, ¡sin manos!
  39. 39. Is Java the new COBOL?
  40. 40. Is Java the new COBOL?
  41. 41. “The only difference(!) betweenShakespeare and you was the size of his idiom list - not the size of his vocabulary.” “Epigrams in programming #10” Alan Perlis (1922 - 1990) http://www.cs.yale.edu/quotes.html

×