WHAT IS SCALA?
Scala is a general-purpose programming language, i.e it can be an object-oriented and/or functional programming language. It's built on top of the JVM(Java Virtual Machine)....yes that's right, are you thinking doesn't that mean Java?
Well, yes and no.
Scala source code is intended to be compiled to Java bytecode, so that the resulting executable code runs on a Java virtual machine.
Which make is how it achieves interoperability, it's simply means you can also write Java(for the you Java gurus) in a Scala code base. Also, it will allow using of libraries written in either language to be used referenced in Java or Scala code. I know you're thinking what a time to be alive right, there is more, Scala is concise i.e Scala code is less verbose compare to Java.
WHY SHOULD YOU CARE?
Scala as and is still taking the data (highly in big data) world by storm, ranging from tools and frameworks which are state of the art for the current data engineering, data pipe-lining,machine learning ecosystem and beyond. To mention a few of this tools are Apache Spark, Kafka, Akka, Flink e.t.c
Hence, since a lot of these tools are built using Scala, it's will be very valuable to add Scala to your tools set arsenal.
Some companies using Scala
- Netflix
- IBM
- Airbnb
- Foursquare
- Verizon and a lot more.
If you've come this far, i'd like to think you're really thrilled to want to get started writing some Scala code.
HOW TO SETUP SCALA ON YOUR MACHINE
For Mac users
brew updateCopy
brew install scala
You can verify installation by running scala -version
on your terminal
For Linux user
sudo apt-get install scalaCopy
For Windows users
You can install with this link download it. Follow the setup instruction and you should be fine.
Some supported TextEditor and IDE
- Vscode
- Intellij
- Eclipse
For some getting started tutorial you can checkout the Scala Book.
Conclusion
Scala is a high demand skillset with low available proficient developers in it. At the rate in which data is been generated around the world from websites, mobile apps, IOT devices, cars and many more, the need for Scala developers will be increasing much more but there are very few around the world compare to the numbers that are and will be needed.
Reference
docs.scala-lang.org/getting-started/index.h..