Este fin de semana he tenido la oportunidad de dar una charla en la Mindcamp sobre las características de Scala que he ido aprendiendo durante estas últimas semanas.
Aunque queda aún mucho por aprender, esta charla resume los temas que hemos ido viendo en los artículos anteriores de esta serie, así como algunos ejemplos donde podemos ver:
- Hola mundo y diferencias de sintaxis con Java o C#
- Clases, objetos, y funciones como ciudadanos de primera clase.
- Sintaxis iterativa VS Sintaxis funcional.
- Traits como manera de tener interfaces con implementación.
- Case classes para realizar pattern matching y separar la interfaz de la implementación.
Los ejemplos están disponibles en este repositorio de Github: Mindcamp7-Scala.
Como parte de la charla, puse una lista de una serie de características que se quedaron fuera y que quedan como idea para futuros artículos, como son:
- Frameworks como Play y Scalaz
- Testing con ScalaTest
- Integración con herramientas
- La línea de comandos (REPL) de Scala
- Interoperabilidad con Java.
- La herramienta Activator de Typesafe
- Scala Build Tool
Además, algunos recursos, muchos de los cuales ya hemos listado anteriormente en el blog, como son:
- Libro Scala By Example: en la web oficial
- Charla Scala – the Simple Parts: en Youtube
- Functional Programming Principles in Scala: en Coursera
- Principles of Reactive Programming: en Coursera
- Documentación: https://scala-lang.org
Finalmente, un par de libros que me recomendó el gran Jorge Barroso (@flipper83) sobre programación funcional:
- Functional Thinking: Paradigm Over Syntax: libro en Amazon
- Becoming Functional: libro en Amazon
Las diapositivas están disponibles en mi SlideShare: Scala desde C# y JavaScript
La semana próxima estaré en la LambdaWorld, un evento que reúne en Cadiz a lo mejor de la programación funcional, y habrá, por supuesto, Scala. Nos vemos allí!