¿Cómo aprendo Scala?

Es una buena decisión comenzar con Scala. Scala ayuda a las personas a resolver problemas reales de una manera elegante.

Scala es un lenguaje de propósito general que combina conceptos de lenguajes de programación orientados a objetos y funcionales.

Fue desarrollado para superar los problemas que enfrentan otros idiomas y se puede integrar fácilmente en el código existente.

Algunos de los mejores libros para Scala que te ayudarán en el aprendizaje son:

1.Programación en Scala: una guía de programación Scala paso a paso completa por Martin Odersky, Lex Spoon, Bill Venners

2.Scala para el impaciente de Cay Hortsmann

3. Escala en profundidad por Joshua D Suereth

4.Introducción al arte de la programación usando Scala por Mark Lewis

Para obtener más libros, visite este enlace: El mejor libro para aprender Scala

Puede consultar estos blogs para un estudio detallado sobre Scala:

Scala: Introducción

Scala: Características

Scala: Estructuras de control

Scala: Tuplas

Scala: Funciones parciales

También puedes consultar este video de Scala Tutorial para principiantes.

Espero eso ayude !!

Un par de nosotros de Quora estamos compilando una lista de los buenos recursos que hemos encontrado en Scala aquí: http://www.quora.com/Scala-Resou

Bastante fácil, en realidad.

Mi experiencia sugiere que si ya tiene un año o dos de experiencia en programación, debería poder adquirir la sintaxis de Scala en un par de días. Hay muchos recursos en la red que lo pondrán al día, en particular la guía oficial para desarrolladores de Java o la Escuela Scala de Twitter. Personalmente, no me gustó ninguno de ellos, así que escribí mi propia introducción de Scala y la publiqué como muestra gratuita (alrededor de 40 páginas) de mi libro: Desarrollo web moderno con Scala.

Una vez que sepas lo básico, no es muy diferente de otros lenguajes de programación: solo crea un proyecto real e intenta construirlo. Personalmente, recomiendo usar Play framework, ya que es fácil de comenzar y está lleno de buenas prácticas de Scala (más información sobre eso en mi blog, la forma más rápida de aprender Scala). En esta etapa, obtendrá bastante confianza en el uso de elementos funcionales básicos como el curry, la coincidencia de patrones y especialmente para las expresiones.

La mayoría de las personas se detienen allí, pero Scala tiene un nivel secreto de dominio que involucra cosas más avanzadas que usualmente tratan con conceptos de teoría de categorías, tipos de personas de clase superior, etc. en esta charla de Creighton Kirkendall. De nuevo, hay varias formas de aprenderlo. Puedes comenzar con la teoría y luego pasar a la práctica mientras lees El Libro Rojo. O bien, puede ir en la dirección opuesta con mi libro, Mastering Advanced Scala, y desarrollar una intuición mientras explora las bibliotecas funcionales existentes. El primero es más sólido académicamente, mientras que el segundo es más fácil de entender.

Una última cosa. Algunas personas afirman que Scala es un lenguaje híbrido y, por lo tanto, inferior a otros lenguajes de FP “reales”. Esto no es verdad. En cuanto a las características, Scala es uno de los lenguajes de FP más avanzados que existen en la actualidad, aproximadamente al mismo nivel que Haskell, pero probablemente mejor en términos de madurez de herramientas, número de trabajos, charlas, tutoriales, etc.