Java vs Scala: 30 Metrics Comparison

Java vs Scala

Java

Java is a Object-Oriented, Functional programming language first appeared in 1995, designed by James Gosling. Main use cases: Backend Services, Enterprise Applications, Android.

Scala

Scala is a Object-Oriented, Functional programming language first appeared in 2004, designed by Martin Odersky. Main use cases: Backend Services, Enterprise Applications, Android.

30 Metrics

Metric Java Scala
GitHub Stars 67614 55399
Stack Overflow Tags 836938 668243
TIOBE Rank 4 49
RedMonk Rank 2 51
PYPL Rank 19 56
Average Salary (USD) 126537 108106
Job Postings 41128 32694
Benchmarks Score 0.91 0.77
Learning Curve Hard Hard
Community Size Very Large Large
Documentation Quality 8 9
Ecosystem Maturity 9 9
Industry Adoption 9 9
Type System Complexity 9 7
Concurrency Support 10 4
Performance - Execution Speed 10 6
Performance - Memory Usage 10 5
Performance - Startup Time 10 6
Tooling Quality 10 9
Package Manager Quality 9 9
IDE Support 9 9
Debugging Experience 10 9
GitHub Stars Rank 2 25
Stack Overflow Tags Rank 10 32
Average Salary Rank 15 41
Job Postings Rank 12 35
Benchmarks Rank 14 36
Learning Curve Score 3 4
Community Size Score 10 8
AHP Score 8.41 7.17

AHP Score

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

When to choose Java

Backend Services, Enterprise Applications, Android. Java is a Object-Oriented, Functional programming language first appeared in 1995, designed by James Gosling. Main use cases: Backend Services, Enterprise Applications, Android.

When to choose Scala

Backend Services, Enterprise Applications, Android. Scala is a Object-Oriented, Functional programming language first appeared in 2004, designed by Martin Odersky. Main use cases: Backend Services, Enterprise Applications, Android.

Hello World Example

Java:

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

Scala:

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

Other languages