4. ¿Qué sabía de Scala?
• Funciona sobre la JVM
• Es funcional… dicen
• Apache Spark (big data things) está escrito en él
• Bastante aceptado en la comunidad Java
18. Qué hemos visto
• Funciones como parámetros
• “return” opcional.
• Sintaxis distinta si hay retorno o si no hay.
• Parámetros en la definición de la clase
• Unit = void
28. Qué hemos visto
• Las traits permiten tener implementación
• Podemos heredar varias traits
• Hemos de implementar las funciones necesarias y asignar valores
29. Case classes
• Separación entre datos y transformación
• Recomendado cuando nuestras entidades no cambien
• Menos código al agregar una nueva operación
31. Qué hemos visto
• Definiciones de una línea
• Case con parámetros de constructor
• Independientes del dato
• No recomendado si nuestras entidades cambian
32. En resumen
• Un lenguaje muy rico y variado
• Curva de aprendizaje sencilla
• Ventajas de programación funcional
• “Magia” pero en tiempo de compilación
• Menos código que escribir
33. ¿Y ahora qué?
• Libros:
• Scala By Example
• Youtube:
• Scala -- the Simple Parts
• Cursos:
• Functional Programming Principles in Scala
• Principles of Reactive Programming
(no hay nuevas sesiones, pero el material está ahí)
• Documentación:
• scala-lang.org
34. Qué se nos queda fuera
• Otras miles de características del lenguaje
• Frameworks como Play (web) o Scalaz (funcional)
• Testing con ScalaTest
• Integración con herramientas
• Interoperabilidad Java
• La herramienta activator
• La Scala BuildTool: sbt