Scala en la Practica

0 views
1,071 views

Published on

Published in: Technology
1 Comment
4 Likes
Statistics
Notes
No Downloads
Views
Total views
0
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
12
Comments
1
Likes
4
Embeds 0
No embeds

No notes for slide

Scala en la Practica

  1. 1. Scala en la Práctica<br />Julio Carlos Sánchez Ortega<br />
  2. 2. Agenda<br />Introducción a Scala<br />Casos de uso práctico<br />PatternMatching<br />Haciendo pruebas<br />Retos al usar Scala<br />Uso en la industria<br />Código<br />
  3. 3. Introducción a Scala<br />Es multi-paradigma<br />Es todo-propósito<br />Es multi-plataforma<br />Soporte “nativo” de concurrencia<br />Creado por el principal desarrollador del javac<br />
  4. 4. Casos de uso práctico<br />Como lenguaje principal en una aplicación<br />Como lenguaje en de scripting<br />Como lenguaje en el middleware<br />Como lenguaje en el back-end<br />Como lenguaje en el front-end<br />
  5. 5. Como lenguaje de scripts<br />Scala puede ser usado para automatizar tareas repetitivas y ejecutarse desde el shell tal como se puede hacer con otros lenguajes como Python y Ruby.<br />
  6. 6. Como middleware<br />Scala nos puede servir como un broker de mensajería con ayuda de Actores<br />Nos permite implementar muchas de las funciones de les EIP<br />
  7. 7. Como back-end<br />Usando un ORM como Squeryl<br />Usando un cache como Infinispan<br />
  8. 8. Como front-end<br />En aplicaciones web con un framework como Lift<br />En aplicaciones de escritorio con Swing<br />
  9. 9. PatternMatching<br />Nos permite hacer una selección a partir de una estructura de datos y ejecutar una acción<br />Es una de las características mas usadas en Scala<br />
  10. 10. Usos del PatternMatching<br />Se usa como una sentencia switch con esteroides<br />Se usa para discriminar los mensajes recibidos en los actores<br />Se usa para ejecutar acciones a partir de una coincidencia en un set de expresiones regulares<br />Se usa en el manejo de excepciones<br />
  11. 11. Haciendo pruebas<br />Pruebas de unidad con ScalaTest<br />Pruebas estilo BDD con ScalaTest<br />MockObjects y MockFunctions con Borachio<br />
  12. 12. Retos al usar Scala<br />Adopción<br />Paradigma<br />Legacycode<br />Soporte de IDE’s<br />
  13. 13. Uso en la industria<br />LinkedIn<br />Twitter<br />
  14. 14. LinkedIn<br />
  15. 15. Twitter<br />
  16. 16. Código<br />Ejemplos adaptados de implementaciones reales.<br />
  17. 17. Preguntas<br />
  18. 18. Recursos<br />Sitio oficial Scala - http://www.scala-lang.org/<br />Sitio oficial de Lift - http://liftweb.net/<br />Sitio oficial de Squeryl - http://squeryl.org/index.html<br />ScalaMUG - http://scala-mug.org/<br />Primeros pasos con Scala – http://www.artima.com/scalazine/articles/steps.html<br />TwitteronScala – http://www.artima.com/scalazine/articles/twitter_on_scala.html<br />LinkedInSignal - http://www.infoq.com/articles/linkedin-scala-jruby-voldemort<br />Código: http://hg.scala-mug.org/scala-in-practice/<br />
  19. 19. Datos de contacto<br />@thegeekinside<br />http://mx.linkedin.com/in/juliocarlossanchez<br />thegeek@thegeekinside.net<br />thegeekinside@gmail.com<br />

×