Qu'est-ce que Scala ?

Scala est un langage de programmation moderne qui intègre des procédures et des fonctionnalités de langage orientées objet et fonctionnelles. Il fournit un mécanisme général qui vise à améliorer la productivité en réduisant la complexité et la longueur du code du programme.

Un langage à plusieurs visages

Scala est un langage dit multi-paradigmes. Cela veut dire qu’il comporte différentes approches de programmation, la programmation orienté objet, la programmation fonctionnelle et la programmation impérative.

Programmation orienté objet (POO) :
Scala reprend toutes les bases de la POO, le concept d’objet, d’héritage de polymorphisme, d’instance de classe, de méthode…

Programmation fonctionnelle :
Scala possède également les attributs de la programmation fonctionnelle, certaines variables non mutables, utilisation de λ fonctions…

Programmation impérative :
Paradigme opposé de la programmation fonctionnelle, Scala propose également de travailler en programmation impérative : l’exécution d’un programme est comme une machine à état qui change après chaque instruction, contrairement à l’immuabilité de la programmation fonctionnelle.

Un langage extensible

Scala vient de l’anglais « scalable » qui signifie évolutif, extensible. Ainsi, Scala utilise une ribambelle de bibliothèques pouvant être étendu « à l’infini », tout ce qui ne sert pas directement est ainsi mis dans différentes bibliothèques. Le programmeur les utilise sans s’en rendre compte ce qui facilite grandement son travail. De plus, Scala peut utiliser directement les bibliothèques Java qui sont très nombreuses et beaucoup utilisés.

son histoire

L’histoire de Scala est intéressante, elle nous permet de comprendre les fondations du langage. Elle renforce à mon avis l’intérêt du langage et me donne encore plus envie d’avancer dans mon apprentissage.

L’histoire de ce langage débute en 2001, à l’Ecole Polytechnique Fédérale de Lausanne (EPFL), plus précisément au Laboratoire des Méthodes de Programmation (LAMP). Martin Odersky son fondateur est professeur à l’EPFL.

En 1995 lui et Philip Wadler découvrent la JVM. Quelques travaux de recherches plus tard, SUN Microsystems demande à Martin de travailler sur le compilateur Java 1.1. Martin sera par la suite le responsable du développement du compilateur javac de la version 1.1 à la version 1.4. En 1997 Martin et Philip travaillent sur des concepts pour apporter de la programmation fonctionnelle et générer du bytecode Java. Le projet appelé Pizza donnera naissance plus tard à Scala indirectement.