Accéder au contenu principal

Guide du débutant à Scala

Apprenez les bases de Scala, notamment la syntaxe, la configuration d’un environnement et les principaux types de données.
Actualisé 19 sept. 2026  · 6 min lire

Explorer avec l’IA

ChatGPTClaudePerplexity

Introduction

logo scala

Scala a été conçu par Martin Odersky, professeur à l’École polytechnique fédérale de Lausanne (EPFL) en Suisse et informaticien allemand. Martin a commencé à travailler sur Scala en 2001 et la première version est sortie en 2004.

Scala signifie Scalable Language. C’est un langage orienté objet polyvalent qui partage plusieurs points communs avec le langage Java. Il prend en charge la programmation fonctionnelle. De nombreuses décisions de conception de Scala visaient à pallier les limites du langage Java.

Voici quelques fonctionnalités offertes par Scala :

  • Le code source Scala peut être compilé en bytecode Java et s’exécuter ainsi sur une Java Virtual Machine (JVM).

  • Il assure l’interopérabilité avec Java, ce qui permet d’utiliser dans un même projet des bibliothèques écrites dans l’un ou l’autre langage.

  • Comme Java, Scala utilise une syntaxe à accolades.

  • Il reprend de nombreuses caractéristiques des langages fonctionnels comme Scheme, Standard ML et Haskell : curryfication, inférence de types, immutabilité, évaluation paresseuse et filtrage par motifs (pattern matching).

  • Prise en charge d’applications Web via JavaScript.

  • Contrairement à Java, Scala gère également la surcharge d’opérateurs, les paramètres optionnels, les paramètres nommés et les chaînes brutes.

Un fait intéressant sur Scala : il est largement utilisé par des entreprises comme Apple, Twitter, Walmart et Google pour sa scalabilité et ses capacités côté backend.

Configurer Scala dans Jupyter Notebook

Jupyter Notebook est l’un des outils les plus utilisés en informatique, notamment en data science. Il prend aussi en charge le développement Scala grâce au spylon-kernel.

Remarque : si vous débutez avec Jupyter Notebook, n’hésitez pas à consulter ce tutoriel complet.

Configurer l’environnement Scala dans Jupyter Notebook est très simple. Procédez en quelques étapes :

  • Commencez par installer spylon-kernel.

    pip install spylon-kernel (Python 2)
    pip3 install spylon-kernel (Python 3)

  • Créez ensuite la spécification du noyau pour pouvoir sélectionner le scala-kernel dans Jupyter Notebook.

    python -m spylon_kernel install (Python 2)
    python3 -m spylon_kernel install (Python 3)

  • Étape importante : installez pyspark et findspark, car spylon-kernel installe également des composants spark.

    pip install pyspark findspark (Python 2)
    pip3 install pyspark findspark (Python 3)

  • Enfin, lancez Jupyter Notebook, choisissez le noyau spylon-kernel et c’est parti !

exemple jupyter notebook

  • Exécutez un court extrait de code pour vérifier que le noyau Scala est correctement configuré.
val x = 2
val y = 3
x*y
x: Int = 2
y: Int = 3
res1: Int = 6

Parfait ! Comme vous pouvez le constater ci-dessus, l’environnement Scala a bien été configuré dans Jupyter Notebook.

Syntaxe de base

Commençons par afficher Hello, World! en Scala.

print("Hello, World!")
Hello, World!

Comme vous le voyez, c’est très simple : une commande print suivie de l’entrée passée en argument.

Voyons maintenant quelques éléments de syntaxe en Scala :

  • Scala est sensible à la casse : les identifiants DataCamp et dataCamp ont des significations différentes.

  • En Scala, la première lettre des noms de classes doit être en majuscule. Si le nom de la classe comporte plusieurs mots, la première lettre de chaque mot est en majuscule. Par exemple : class MyScalaDataCampTutorial.

  • Les noms de méthodes en Scala suivent une convention différente des noms de classes afin de les distinguer. Les noms de méthodes commencent par une lettre minuscule (Source). Si le nom contient plusieurs mots, la première lettre de chaque mot interne est en majuscule. Par exemple : def firstDatacampScalaTutorial()

  • En Scala, le nom du fichier programme doit correspondre exactement au nom de l’objet. Lors de l’enregistrement, utilisez le nom de l’objet et ajoutez l’extension .scala. Par exemple, si l’objet s’appelle ScalaTutorial, le fichier devra être enregistré sous ScalaTutorial.scala.

    Remarque : si le nom de fichier et le nom de l’objet ne correspondent pas, le programme ne compilera pas.

  • Enfin, comme dans la plupart des langages, l’exécution d’un programme Scala démarre par la méthode main(), partie essentielle de tout programme Scala.

La figure ci-dessous présente les mots réservés de Scala, qui ne peuvent pas être utilisés comme constantes, variables ou identifiants.

mots réservés en scala
(Source)

Types de données

Les types de données en Scala sont très proches de ceux d’autres langages comme C, C++, Java ou Python, avec des tailles mémoire et des précisions similaires.

Voyons enfin quelques types de données présents en Scala :

  • Int : valeur signée 32 bits (peut être positive ou négative) avec un intervalle de 2^{-31} à 2^{31} - 1

  • Byte : valeur signée 8 bits avec un intervalle de 2^{-7} à 2^{7} - 1

  • Short : valeur signée 16 bits avec un intervalle de 2^{-15} à 2^{15} - 1

  • Long : valeur signée 64 bits avec un intervalle de 2^{-63} à 2^{63} - 1

  • Float : 32 bits (simple précision) et 64 bits (double précision)

  • Char : caractère Unicode 16 bits non signé (valeurs uniquement positives).

Parmi les autres types, on trouve notamment String, Boolean, Null.

Conclusion

Félicitations d’avoir suivi ce tutoriel jusqu’au bout.

C’est un excellent point de départ pour les débutants qui souhaitent apprendre Scala.

Pour aller plus loin, découvrez les tutoriels Scala de DataCamp :

Les bases des fonctions et méthodes en Scala

IF ELSE en Scala

Opérateurs en Scala

Listes en Scala

Il reste une multitude de notions à explorer autour de Scala : if/else, boucles for, opérateurs, etc. Ces sujets seront couverts dans de futurs tutoriels. Restez à l’écoute !

Références :

N’hésitez pas à poser vos questions sur ce tutoriel dans les commentaires ci-dessous.

Sujets
Scala
Science des données

En savoir plus sur la data science et Scala

Cours

Introduction à Scala

3 h
27.1K
Commencez votre parcours avec Scala, un langage populaire pour les applications évolutives et les infrastructures d'ingénierie des données.
Afficher les détailsRight Arrow
Commencer Le Cours
Voir plusRight Arrow