.NET vs Scala: What are the differences?
What is .NET? A free, cross-platform, open source developer platform for building many different types of applications. .NET is a general purpose development platform. With .NET, you can use multiple languages, editors, and libraries to build native applications for web, mobile, desktop, gaming, and IoT for Windows, macOS, Linux, Android, and more.
What is Scala? A pure-bred object-oriented language that runs on the JVM. Scala is an acronym for “Scalable Language”. This means that Scala grows with you. You can play with it by typing one-line expressions and observing the results. But you can also rely on it for large mission critical systems, as many companies, including Twitter, LinkedIn, or Intel do. To some, Scala feels like a scripting language. Its syntax is concise and low ceremony; its types get out of the way because the compiler can infer them.
.NET belongs to "Frameworks (Full Stack)" category of the tech stack, while Scala can be primarily classified under "Languages".
"Tight integration with visual studio", "Stable code" and "Great community" are the key factors why developers consider .NET; whereas "Static typing", "Jvm" and "Pattern-matching" are the primary reasons why Scala is favored.
.NET and Scala are both open source tools. Scala with 11.8K GitHub stars and 2.75K forks on GitHub appears to be more popular than .NET with 11.2K GitHub stars and 2.41K GitHub forks.
According to the StackShare community, .NET has a broader approval, being mentioned in 1566 company stacks & 239 developers stacks; compared to Scala, which is listed in 437 company stacks and 324 developer stacks.
What is .NET?
What is Scala?
Want advice about which of these to choose?Ask the StackShare community!
Sign up to add, upvote and see more prosMake informed product decisions
Sign up to add, upvote and see more consMake informed product decisions
Sign up to get full access to all the companiesMake informed product decisions
Sign up to get full access to all the tool integrationsMake informed product decisions
Scala is the God of languages. A legend. The Mount Rushmore of hybrid OO/functional languages is Scala's face four times over.
Ok, honestly, we love Scala. We love(d) Java (and it's parents C and C++), and we love(d) all the languages that borrowed cough stole cough from Java over the years such as Groovy, Clojure, and C#.
It may not be perfect (it totally is, but since programming languages don't have egos of their own, we don't want to paint it too bright), but it is awesome. It runs on the JVM, you can utilize Spring, it works great for data processing (which is sorta kinda the thing we do here, folks), and it just makes sense at all levels.
Nearly our entire server codebase is written in Scala (if you haven't heard of it, it's a programming language that is basically what you would get if Java + ML had a baby). This has worked out super well. It enables us to write concise easy to deal with code that is typechecked at compile time. It's also been a big help with recruiting.
worked with scala for around 2 years. really enjoyed the language and getting back into the world of functional. unfortunately the community is heavily fragmented and the language itself broken and inconsistent. that with the various factions involved made it a put of for long term investment.
Microsoft has done an incredible job of keeping the .NET Framework powerful and stable. It is well designed and keeps getting more robust with each release. It isn't the most popular technology in this space, but I think a good case can be made to use .NET in many new projects.
Scala, Akka and Spray (which became Akka-Http) provided the building blocks for the menu service.
Akka's actors and finite-state machine were a natural way to model a USSD menu (a series of stateful interactions between a subscriber and the USSD gateway).
Replaces entirely the Java Language to build a much more expressive and powerful code on the backend, while leveraging at the same time the Java Platform Tools and Frameworks, is a mixture of old and mature with new and sexy.
As we started on Windows Phone we use C# and .NET for most of our apps and sites. Being a small team of 2, using .NET enables us to work on each part of the service without having to switch to different languages.
I use .NET alongside with C# since my university studies, and I really enjoy it. Especially .NET Core, which is the best thing that happened to Microsoft since... ever.
Server side development language and frameworks: ASP.Net MVC 4, Asp.Net WebApi 2, Razor View engine, Moq, Entity Frameworks, etc.