Java vs Scala: comparação de 30 métricas

Java vs Scala

Java

Java é uma linguagem de programação Object-Oriented, Functional que apareceu pela primeira vez em 1995, projetada por James Gosling. Principais casos de uso: Backend Services, Enterprise Applications, Android.

Scala

Scala é uma linguagem de programação Object-Oriented, Functional que apareceu pela primeira vez em 2004, projetada por Martin Odersky. Principais casos de uso: Backend Services, Enterprise Applications, Android.

30 métricas

MétricaJavaScala
GitHub Stars6761455399
Stack Overflow Tags836938668243
TIOBE Rank449
RedMonk Rank251
PYPL Rank1956
Average Salary (USD)126537108106
Job Postings4112832694
Benchmarks Score0.910.77
Learning CurveHardHard
Community SizeVery LargeLarge
Documentation Quality89
Ecosystem Maturity99
Industry Adoption99
Type System Complexity97
Concurrency Support104
Performance - Execution Speed106
Performance - Memory Usage105
Performance - Startup Time106
Tooling Quality109
Package Manager Quality99
IDE Support99
Debugging Experience109
GitHub Stars Rank225
Stack Overflow Tags Rank1032
Average Salary Rank1541
Job Postings Rank1235
Benchmarks Rank1436
Learning Curve Score34
Community Size Score108
AHP Score8.417.17

Pontuação AHP

  • Java: 8.41 (#5)
  • Scala: 7.17 (#30)
Java            | ######## 8.41
Scala           | ####### 7.17

Quando escolher Java

Backend Services, Enterprise Applications, Android. Java é uma linguagem de programação Object-Oriented, Functional que apareceu pela primeira vez em 1995, projetada por James Gosling. Principais casos de uso: Backend Services, Enterprise Applications, Android.

Quando escolher Scala

Backend Services, Enterprise Applications, Android. Scala é uma linguagem de programação Object-Oriented, Functional que apareceu pela primeira vez em 2004, projetada por Martin Odersky. Principais casos de uso: Backend Services, Enterprise Applications, Android.

Exemplo Hello World

Java:

public class Main { public static void main(String[] a){ System.out.println("Hello, World!"); } }

Scala:

object Main extends App { println("Hello, World!") }

Otros lenguajes