Chefs de projet, data scientists, développeurs.
Comprendre les apports du langage Scala, de la programmation fonctionnelle. Maîtriser la programmation Scala, savoir s'interfacer avec des programmes Java.
Connaissance d'un langage de programmation et de la programmation objet.
Introduction
Présentation de Scala. Les points forts du langage :
extensibilité, programmation objet, programmation fonctionnelle, utilisation de la JVM.
Premiers pas
Différents modes d'utilisation de Scala : compilé, en script, avec un interpréteur
Outils de développement Scala : compilateur scalac, sbt (Scala's Build Tool), IntelliJ avec le plugin Scala
Atelier :réalisation de programmes simples (calcul et affichage)
Syntaxe
Les variables, les fonctions, les classes, les traits. Le cas particulier des "singleton objects" et "companion objets"
Les opérateurs. Les annotations.
Programmation fonctionnelle
Principe et différences par rapport à la programmation impérative
Particularités sur les tuples, listes, tables associatives.
Interfaçage avec Java
Fonctionnement de scala, byte code. Différences entre Java et Scala. Appel de classes Scala depuis du code Java
Utilisation de bibliothèques Java dans un programme Scala