Scala jest to wieloplatformowy, statycznie typowany język programowania działający na maszynie wirtualnej Javy. Wspiera programowanie funkcyjne jaki i obiektowe.
Dużą zaletą Scali jest kompatybilność z javą - biblioteki mogą być reużywane pomiędzy Scalą a Javą bez problemu.
Zastosowanie skali dominuje w dziedzinach jak data science, big data czy machine learning.
Scala jest wykorzystywana przez duże firmy takie jak:
Github to system kontroli wersji. Możesz znaleźć tam projekty open source w każdej technologii. Zobacz jakiego typu projekty wykorzystują język Scala oraz jak wygląda Scala od strony kodu. Zwróć uwagę na pliki z rozszerzeniem .sc lub .scala.
1# | the-algorithm | 58,419 |
2# | spark | 36,158 |
3# | prisma1 | 16,691 |
4# | scala | 14,107 |
5# | lila | 13,289 |
6# | akka | 12,726 |
7# | predictionio | 12,555 |
8# | playframework | 12,425 |
9# | CMAK | 11,410 |
10# | bfg-repo-cleaner | 9,852 |
Scala w porównaniu do Kotlina czy Javy ma nieco większy próg wejścia. Również przejście z Javy na Scalę jest relatywnie trudniejsze w porównaniu z Kotlinem.
Wpływa na to fakt, że Scala jest ekspresyjna - potrzeba dużo mniej kodu niż w Javie by wyrazić to samo - jednak co za tym idzie, trzeba więcej rozumieć co się dzieje pod spodem. Jest to zaleta języka, gdy mamy już doświadczenie, jednak na początku nauka jest przez to bardziej problematyczna.
Według TIOBE index, język Scala jest na 35 pozycji pod względem popularności.
Na Stack Overflow jest 11 najczęściej tagowanym językiem z 111,569 zapytaniami.
Na Github zajmuje 14 pozycję z liczbą 53,736 projektów, z których 168 ma więcej niż 1000 gwiazdek.
Jeśli chodzi o organizowane spotkania to według Meetup.com jest to 7 co do wielkości społeczność z liczbą 399 grup, w skład których wchodzi 347,312 członków na całym świecie. W Polsce mamy odpowiednio 17 grup, w skład których wchodzi 18,161 członków.
Scala straciła ostatnio nieco swoją popularność wśród języków JVM, jednak nie powinniśmy się tym sugerować. Scala znalazła zastosowania w niszach takich jak data science, big data czy machine learning i tam będzie utrzymywać swoją dobrą pozycję. Jest to też spowodowane faktem, że Kotlin stał się oficjalnym językiem androida, co znacznie wpłynęło na jej popularność wśród języków JVM. Scala stale się rozwija, a jej ostatnia wersja 3.2.2 została wydana 30 stycznia 2023.
(W języku polskim niżej)
Scala & Functional Programming Essentials | Rock the JVM
Become a Scala programmer and get the skills you need to work with Spark, Akka, and any Scala framework!
Czas trwania: 11.5 total hours 56208 zapisanych uczestnikówAdvanced Scala and Functional Programming | Rock the JVM
For Scala developers: become a top level Scala programmer so you can rock Spark, Akka, Cats or any Scala tool!
Czas trwania: 13.5 total hours 24386 zapisanych uczestnikówApache Spark with Scala - Hands On with Big Data!
Apache Spark tutorial with 20+ hands-on examples of analyzing large data sets, on your desktop or on Hadoop with Scala!
Czas trwania: 9 total hours 91713 zapisanych uczestnikówComplete Scala 3 development masterclass 2023
Master the fundamentals and advanced features of Scala 3 development
Czas trwania: 20 total hours 284 zapisanych uczestnikówBig Data, Hadoop oraz MapReduce w języku Python
Zaawansowane przetwarzanie Big Data z wykorzystaniem Hadoop, MapReduce i języka Python!
Czas trwania: 7.5 total hours 583 zapisanych uczestników