Scala

Partager :

Ces questions n'ont été posées qu'aux développeurs ayant indiqué que Scala était l'un de leurs trois principaux langages de programmation.

Partager :

Quelles versions de Scala utilisez-vous régulièrement ?

45%

Scala 3

66%

2.13

34%

2.12

8%

2.11

1%

2.10 ou antérieure

1%

Je ne sais pas

Quelles sont vos cibles de compilation ?

97%

JVM

21%

scala.js

8%

scala-native

2%

Android

Quels frameworks de tests unitaires utilisez-vous régulièrement ?

74%

ScalaTest

28%

ScalaCheck

24%

MUnit

19%

ZIO Test

18%

JUnit

14%

ScalaMock

Quels frameworks / bibliothèques utilisez-vous régulièrement pour le développement web ?

40%

http4s

29%

Akka HTTP

22%

Play

20%

sttp

11%

Spring

9%

Netty

Quels frameworks ou bibliothèques utilisez-vous régulièrement ?

49%

Cats

35%

Akka

28%

FS2

26%

ZIO

25%

Spark

16%

Slick

12%

Shapeless

8%

Scalaz

Certains des plus grands frameworks Scala (Cats, ZIO, FS2 et http4s) ont gagné en popularité au cours de l'année écoulée. C'est peut-être le signe que ces projets ont gagné en maturité et que les développeurs Scala sont passés de l'utilisation de piles technologiques bricolées par eux-mêmes à des solutions plus éprouvées.

Quel IDE ou éditeur utilisez-vous le plus pour Scala ?

77%

IntelliJ IDEA

13%

Visual Studio Code

3%

Emacs

2%

Vim

1%

Visual Studio

1%

Sublime

2%

Autre

Quel autre IDE ou éditeur utilisez-vous le plus pour Scala ?

8%

52%

IntelliJ IDEA

25%

9%

Visual Studio Code

9%

2%

Vim

1%

2%

Emacs

5%

1%

Sublime

Tomasz Godzik

Développeur Scala sénior chez VirtusLab

La progression de l'utilisation d'IntelliJ IDEA semble montrer que même si le nombre de personnes essayant d'utiliser LSP augmente, elles continuent de considérer IntelliJ IDEA comme leur IDE de confiance.

Cette année, nous avons interrogé une audience plus diversifiée, incluant non seulement les développeurs qui utilisent IntelliJ IDEA avec le plugin Scala dans leur travail quotidien, mais aussi ceux qui préfèrent utiliser d'autres outils, notamment VS Code et Metals. Compte tenu de l'élargissement de notre panel, nous pouvons supposer que les résultats obtenus (77 % des personnes interrogées ont déclaré utiliser IntelliJ IDEA avec le plugin Scala comme IDE principal) donnent une bonne indication de l'état d'esprit de la communauté des développeurs Scala. En outre, plus de la moitié des répondants ont déclaré utiliser IntelliJ IDEA avec le plugin Scala comme IDE secondaire.

Tomasz Godzik

Développeur Scala sénior chez VirtusLab

La progression de l'utilisation d'IntelliJ IDEA semble montrer que même si le nombre de personnes essayant d'utiliser LSP augmente, elles continuent de considérer IntelliJ IDEA comme leur IDE de confiance.

Quels systèmes de création de build utilisez-vous régulièrement ?

82%

sbt

21%

Maven

13%

Gradle

10%

Bloop

8%

Mill

3%

Bazel

2%

Ant

2%

Pants

4%

Autre

Quels environnements Scala interactifs utilisez-vous régulièrement ?

45%

sbt console

44%

Scala CLI

27%

IntelliJ IDEA Worksheet

17%

Scastie

15%

Ammonite REPL

8%

Scala IDE Worksheet

7%

Jupyter Notebook

2%

Apache Zeppelin Notebook

3%

Autre

14%

Aucun

Tomasz Godzik

Développeur Scala sénior chez VirtusLab

C'est la première fois que nous posions des questions sur Scala CLI dans le cadre de notre enquête et un nombre important de développeurs ont déclaré l'utiliser.

Nous avons assisté à l'essor fulgurant de Scala CLI, un outil en ligne de commande permettant d'interagir avec le langage Scala. Sa version 1.0.0 n'a été publiée qu'en mai de cette année, mais 44 % des développeurs Scala ayant répondu à notre questionnaire disent déjà l'utiliser régulièrement. De plus, le cercle d'utilisateurs ne se limite pas à ceux qui utilisent Scala CLI comme alternative à Scala REPL (que Scala CLI a officiellement remplacé) ou à la console sbt (un autre REPL populaire pour Scala). Apparemment, Scala CLI peut aussi être utilisé comme outil de build et semble ainsi éloigner les utilisateurs de sbt lui-même, bien que les créateurs de Scala CLI déclarent que ce n'est pas son objectif principal.

Tomasz Godzik

Développeur Scala sénior chez VirtusLab

C'est la première fois que nous posions des questions sur Scala CLI dans le cadre de notre enquête et un nombre important de développeurs ont déclaré l'utiliser.

Quels plugins de compilation utilisez-vous régulièrement pour Scala ?

24%

Kind Projector

15%

Scalamacros/Scalameta Paradise

1%

Miniboxing

4%

Autre

66%

Aucun

Quels autres outils utilisez-vous pour Scala ?

68%

Scalafmt

37%

Scalafix

24%

Scoverage

15%

Scalastyle

10%

WartRemover

6%

Scapegoat

24%

Aucun

Utilisez-vous Scala 3 ?

66%

46%

Je n'utilise pas Scala 3

27%

44%

J'utilise des fonctionnalités de Scala 3

7%

11%

Je cross-compile Scala 2 vers Scala 3

Tomasz Godzik

Développeur Scala sénior chez VirtusLab

La migration vers Scala 3 commence à se faire se fait lentement mais sûrement. Cela peut s'expliquer par l'amélioration des outils et par l'augmentation du nombre de bibliothèques prises en charge. Je me demande quel sera l'impact du LTS au cours de l'année à venir.

Quelles fonctionnalités de Scala 3 utilisez-vous ?

87%

Enums

78%

Méthodes d'extension

74%

Instances données / clauses using

61%

Types d'union

57%

Définitions de haut niveau

53%

Alias de types opaques

Merci du temps que vous nous avez accordé !

Nous espérons que vous avez trouvé ce rapport intéressant. N'hésitez pas à le partager avec vos amis et collègues.

Si vous avez des questions ou des suggestions, contactez-nous à surveys@jetbrains.com.