Need advice about which tool to choose?Ask the StackShare community!

.NET

9.7K
5.6K
+ 1
1.9K
Play

746
604
+ 1
496
Add tool

.NET vs Play: 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 Play? The High Velocity Web Framework For Java and Scala. Play Framework makes it easy to build web applications with Java & Scala. Play is based on a lightweight, stateless, web-friendly architecture. Built on Akka, Play provides predictable and minimal resource consumption (CPU, memory, threads) for highly-scalable applications.

.NET and Play can be primarily classified as "Frameworks (Full Stack)" tools.

"Tight integration with visual studio", "Stable code" and "Great community" are the key factors why developers consider .NET; whereas "Scala", "Web-friendly architecture" and "Built on akka" are the primary reasons why Play is favored.

.NET and Play are both open source tools. It seems that Play with 11.2K GitHub stars and 3.77K forks on GitHub has more adoption than .NET with 11.1K GitHub stars and 2.4K GitHub forks.

According to the StackShare community, .NET has a broader approval, being mentioned in 1566 company stacks & 239 developers stacks; compared to Play, which is listed in 112 company stacks and 47 developer stacks.

Advice on .NET and Play
Bogdan Pop
Needs advice
on
.NET.NETNode.jsNode.js
and
SpringSpring

Hello, I am trying to learn a backend framework besides Node.js. I am not sure what to pick between ASP.NET Core (C#) and Spring Boot (Java). Any advice, any suggestion is highly appreciated. I am planning to build only Web APIs (no desktop applications or something like that). One thing to mention is that I have no experience in Java or C#. I am trying to learn one of those 2 and stick to it.

UPDATE: The project I am trying to build is a SaaS using microservices that supports multi tenancy.

See more
Replies (3)
Dominik Liebler
Lead Software Engineer · | 9 upvotes · 54.8K views
Recommends

I'd recommend to learn Spring as it is very widespread in the industry and provides a lot of easy integration into most of the common backend tech stacks. Rather than learning Java you could look into Kotlin. It's a very consistent, stable and well-thought language in my opinion and not as verbose as Java. Many problems can be solved with Kotlin in a clear and elegant way while also always having the option to use data structures and libs in JVM. It is also has a very good support in Spring.

See more
Recommends

Why not pick Django or Flask (both Python)

See more
Lionel Cawood
Technical Team Lead at inTime Agile Logistics · | 3 upvotes · 25.7K views
Recommends

I have worked in a Spring environment for many years and I still love working with it. Super quick to get a base application running and get coding, thanks to Spring Boot's easy and straight forward integration with Tomcat. However, I will try and answer this question from another perspective: look at topics such as popularity of the language, average statistics on community contribution to their repositories and hiring availability from companies. If you are going down the API route for backend, leverege on your experience in the Node world by looking into ExpressJS (or even NestJS). The JavaScript world is really excellerating at a lightning speed, and I could recommend exploring those worlds a bit more, should it be a comfort level for you. However, my biased answer is tryout Java, followed by Spring afterwards. No disrespect to any .NET developers out there, as there are a few topics in there which are fantastically implemented.

See more
Abhi ram
Needs advice
on
.NET.NET
and
.NET Core.NET Core

Hey everyone, I am a backend developer who specializes in Java and Spring Boot having an experience of 4 years. And due to my shift in the project, now I need to deal with the .NET Core technology, as a Java developer before I need to know where to start in order to support the project and build REST API.

Can I get advice on how to move on to the new backend stack and what to learn and how to get hands-on with the .NET?

See more
Replies (3)
Aghogho Bernard
Lead Software Developer/Eng. at VOYD AB · | 7 upvotes · 30.9K views
Recommends
on
.NET.NET.NET Core.NET Core

IMHO I think it is the best framework to build software on. Since you are coming from Java, It should not be too difficult to adjust to C#. NET Core has come a long way. NET6 is just amazing. With the minimal API, https://docs.microsoft.com/en-us/aspnet/core/fundamentals/minimal-apis?view=aspnetcore-6.0 REST API should be very easy work for starters. When you settle in, you can go more advanced.

Although this is dated - https://download.microsoft.com/download/D/E/E/DEE91FC0-7AA9-4F6E-9FFA-8658AA0FA080/CSharp%20for%20Java%20Developers%20-%20Cheat%20Sheet.pdf it provides you side by side comparison of syntax. Another cool read is - https://betterprogramming.pub/java-to-c-c-to-java-f766c9f659c4

Feel free to reach out if you need any assistance.

Welcome aboard

See more
Jason Starr
.NET Developer at Performance Systems Development · | 4 upvotes · 27.5K views
Recommends
on
.NET.NET.NET Core.NET Core

You will find that the transition from Java to C# is pretty smooth. Working with .NET has become much more intuitive and has a lot to offer. I highly recommend using Visual Studio as your IDE. It makes things much easier and is not too different than other IDEs like IntelliJ. There are also Visual Studio templates for web APIs that make it really easy to get up and running. Microsoft has good documentation and tutorials to help you get familiar with the technology. I would start there.

See more
Recommends
on
.NET Core.NET Core

I would recommend that you become familiar with the C# language. J. Albahari's reference book is suitable for this. To learn rest api development, read Andrew Lock's book "Asp Net Core in Action"

See more
Aleyna ARSLAN
Entrepreneur at Oblong Digital Marketing & Ads · | 5 upvotes · 86.8K views
Needs advice
on
DjangoDjango
and
.NET.NET
in

Hi everyone, I have a new venture project, we do frontend development mainly with Tailwind CSS, JavaScript, CSS, HTML, and React. This project will run on a cloud platform and it will be a web platform with data analysis. At Backend, we can't decide which technology to continue with. We will necessarily use Python for data analysis and algorithms, but should the backend be written with Django or C# .NET, can I get your suggestions within the cloud platform? Price performance is our priority.

See more
Replies (2)
Miles Fawcett
Recommends
on
DjangoDjango

If you are already committed to Python for the data analysis then it would make sense to use Django for the framework and stick with Python throughout. In general the fewer technologies you use (unless there is real justification) will improve process and long term costs.

All things being equal the fact you would not have less (likely no) licensing costs with a Python based solution will overall reduce your long term costs.

See more
Recommends
on
DjangoDjango

If you will be doing data analysis and complex algorithms Django is best suited for this because of it' maturity and the huge communities providing lots of Python libraries for data analysis and more.

See more
Needs advice
on
DjangoDjango
and
.NET.NET

I'm working in a university in the IT department where they are developing web Apps with a .NET framework, and I'm starting a master course with python (python programming, ML, AI, NLP, and Django). My manager doesn't mind using any technology. Please guide me. Should I go to learn .NET with Django or stick with Django? What is the best for the future?

See more
Replies (2)
Lukas Batteau
Recommends
on
FastAPIFastAPIFlaskFlask
at

Since the course is in Python, a Python web framework seems like a logical choice. Django is a good option, but Flask and FastAPI are far more lightweight than Django, and great for quickly adding an API on top of your ML/NLP code. Django has its merits, especially the generated admin interface, but requires a lot of boilerplate code.

See more
Alvin Mites
Recommends

The one thing I wouldn't do is mix the two, different structures and ideas for how to do things

Taking a class in python already? I'd lean to Django Want to learn a language that will carry forward to a good paying job .net

Python is an excellent language, though it's often being replaced with things like go which uses a similar syntax

Over time you're going to learn many languages if you want to be a great programmer spend your time with one and dive deep, learn what makes it shine and what the draw backs are grow proficient with it and then consider learning something different so you can compare

Early on learning a single language at depth is more important than tinkering with several or learning any specific language

Good luck

See more
Leonardo Viada
Project manager and web developer at Revo Digital · | 4 upvotes · 2.7M views
Needs advice
on
PlayPlayRailsRails
and
ScalaScala
at

In the past few months, a project we're working on grew up quite fast. Since we're adding more and more features, I'm considering migrating my Express/TS REST API towards a more solid and more "enterprise-like" framework. Since I am experienced with TypeScript but not so much with Rails nor Play (Scala), I'd like to have some advice on which one could provide the best development experience, and most importantly, the smoothest paradigm transition from the JS/TS world. I've worked on some personal project with Rails, but I've found the Ruby language really distant from what the TypeScript ecosystem and syntax are, whereas on the opposite - during the brief tours I've taken in the past weeks - it's been a pleasure coding in Scala. Obviously, there are some key differences between the two languages - and the two frameworks consequently - but despite all the ROR automation and ease of use I don't despise at all Scala's pragmatic and great features such as static typing, pattern matching, and type inference. So... Please help me out with the choice! Regards

See more
Replies (4)
Kevin Emery
QE Systems Engineer at Discovery, Inc. · | 6 upvotes · 54.4K views
Recommends
on
RailsRails

I don't have the Scala experience to compare the two, but I can say that Ruby is a wonderful language. For procedural programming where you don't need a lot of concurrent execution threads, it's superior to Node.JS in my opinion. All of the concepts from Typescript have equivalent syntax in Ruby, but there are fewer symbols (e.g. () => { ... }); ) and more keywords (eg 'do ... end'). It's a very flexible language and allows for a lot of different approaches to how it's written, so coding standards and careful organization is important. In the long run, however, you'll find it quicker to debug than Node.JS and just as powerful.

See more
ALESSIO SALTARIN
Distinguished IT Architect at IBM · | 5 upvotes · 55.2K views

If you are comfortable with TypeScript, why not evolve to a C# ecosystem? Asp.Net Core + Entity Framework is a mature and well supported technology. As far as I can see in the enterprise market, the most adopted choice is still Java. So, maybe you may have a look to SpringBoot - and ultimately Quarkus.

See more
Hosam Aly
Senior Software Engineer · | 3 upvotes · 46.5K views
Recommends
on
PlayPlayRailsRailsScalaScala

If software performance is your top priority, then Scala/Play is probably best. If developer productivity is your top priority, then Ruby on Rails is the best choice in my opinion.

The Rails framework is batteries-included. The framework takes care of many things by default so that you don't have to. Logging, security, etc. It's also well-integrated; for example, controllers understand models out of the box. I had a better experience with RoR than with Play.

On the other hand, Scala and the JVM are more performant in general, so they can scale to serve more requests per second on the same hardware.

If you're considering serverless functions, then Scala is probably a better choice because it would be faster to load, giving you better economics.

See more
Reza Malek
at Meam Software Engineering Group · | 3 upvotes · 46.6K views
Recommends
on
RailsRailsScalaScala

This is advice regardless of your background and requirements. The Play framework has a terrible and complicated design, don't risk it. I even suggest Spring and Kotlin over it! You can use Scala for small services and Data Engineering stuff and benefit optimizations and threading of JVM. RoR, on the other hand, has a huge development speed, which I believe is a big advantage cause you can handle performance bottlenecks later. Also, Scala has another downside, which is featureful in terms of OO and FP paradigms, which makes anyone write code freely with any personal style and makes it a problem in a team, Hence a coding style has to be defined if there would be Scala development team.

See more
Decisions about .NET and Play
Noe Osorio

Node Js have worked incredible great for me on every project I had. It is fast enough to support big and small apps, you do not have to worry about performance, because it is very capable of building a big REST API.

One advantage is that the learning curve is lower when you have used javascript on web browser as frontend, so, it is easy to migrate from Frontend to Backend with node.

Node Package Manager (NPM) has an incredible amount of packages from many developers, so you can use them on your project as you need them.

Code is easy to support, way different than Java Legacy code.

See more
Ing. Alvaro Rodríguez Scelza
Software Systems Engineer at Ripio · | 12 upvotes · 356K views

I was considering focusing on learning RoR and looking for a work that uses those techs.

After some investigation, I decided to stay with C# .NET:

  • It is more requested on job positions (7 to 1 in my personal searches average).

  • It's been around for longer.

  • it has better documentation and community.

  • One of Ruby advantages (its amazing community gems, that allows to quickly build parts of your systems by merely putting together third party components) gets quite complicated to use and maintain in huge applications, where building and reusing your own components may become a better approach.

  • Rail's front end support is starting to waver.

  • C# .NET code is far easier to understand, debug and maintain. Although certainly not easier to learn from scratch.

  • Though Rails has an excellent programming speed, C# tends to get the upper hand in long term projects.

I would avise to stick to rails when building small projects, and switching to C# for more long term ones.

Opinions are welcome!

See more
Ing. Alvaro Rodríguez Scelza
Software Systems Engineer at Ripio · | 9 upvotes · 477.6K views

Decided to change all my stack to microsoft technologies for they behave just great together. It is very easy to set up and deploy projects using visual studio and azure. Visual studio is also an amazing IDE, if not the best, when used for C#, it allows you to work in every aspect of your software.

Visual studio templates for ASP.NET MVC are the best I've found compared to django, rails, laravel, and others.

See more
Get Advice from developers at your company using StackShare Enterprise. Sign up for StackShare Enterprise.
Learn More
Pros of .NET
Pros of Play
  • 271
    Tight integration with visual studio
  • 261
    Stable code
  • 189
    Great community
  • 182
    Reliable and strongly typed server side language.
  • 140
    Microsoft
  • 119
    Fantastic documentation
  • 89
    Great 3rd party libraries
  • 80
    Speedy
  • 71
    Great azure integration
  • 63
    Great support
  • 34
    Highly productive
  • 34
    C#
  • 34
    Linq
  • 31
    High Performance
  • 28
    Great programming languages (C#, VB)
  • 25
    Open source
  • 19
    Powerful Web application framework (ASP.NET MVC)
  • 16
    Clean markup with razor
  • 16
    Fast
  • 15
    Powerful ORM (EntityFramework)
  • 13
    Dependency injection
  • 10
    Constantly improving to keep up with new trends
  • 10
    Visual studio + Resharper = <3
  • 9
    High-Performance
  • 8
    Security
  • 8
    TFS
  • 7
    Huge ecosystem and communities
  • 7
    Integrated and Reliable
  • 7
    Job opportunities
  • 6
    Light-weight
  • 6
    Lovely
  • 5
    Asynchrony
  • 5
    Variations
  • 5
    {get; set;}
  • 4
    Concurrent
  • 4
    Support and SImplicity
  • 4
    Default Debuging tools
  • 4
    Useful IoC
  • 4
    Scaffolding
  • 4
    Entity framework
  • 3
    Blazor
  • 2
    F♯
  • 2
    Nuget package manager
  • 81
    Scala
  • 55
    Web-friendly architecture
  • 55
    Built on akka
  • 50
    Stateless
  • 47
    High-scalable
  • 46
    Fast
  • 40
    Open source
  • 34
    Java
  • 27
    High velocity
  • 24
    Fun
  • 9
    Lightweight
  • 8
    Non-blocking io
  • 6
    Developer friendly
  • 5
    Simple template engine
  • 4
    Scalability
  • 3
    Pure love
  • 2
    Resource efficient

Sign up to add or upvote prosMake informed product decisions

Cons of .NET
Cons of Play
  • 13
    C#
  • 12
    Too expensive to deploy and maintain
  • 8
    Microsoft dependable systems
  • 8
    Microsoft itself
  • 5
    Hard learning curve
  • 3
    Tight integration with visual studio
  • 3
    Not have a full fledged visual studio for linux
  • 1
    Microsoft itself 🤡🥲
  • 3
    Evolves fast, keep up with releases
  • 1
    Unnecessarily complicated

Sign up to add or upvote consMake informed product decisions

What is .NET?

.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 Play?

Play Framework makes it easy to build web applications with Java & Scala. Play is based on a lightweight, stateless, web-friendly architecture. Built on Akka, Play provides predictable and minimal resource consumption (CPU, memory, threads) for highly-scalable applications.

Need advice about which tool to choose?Ask the StackShare community!

What companies use .NET?
What companies use Play?
See which teams inside your own company are using .NET or Play.
Sign up for StackShare EnterpriseLearn More

Sign up to get full access to all the companiesMake informed product decisions

What tools integrate with .NET?
What tools integrate with Play?

Sign up to get full access to all the tool integrationsMake informed product decisions

Blog Posts

Git.NETCloudBees+3
6
1065
What are some alternatives to .NET and Play?
ASP.NET
.NET is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.
Java
Java is a programming language and computing platform first released by Sun Microsystems in 1995. There are lots of applications and websites that will not work unless you have Java installed, and more are created every day. Java is fast, secure, and reliable. From laptops to datacenters, game consoles to scientific supercomputers, cell phones to the Internet, Java is everywhere!
Python
Python is a general purpose programming language created by Guido Van Rossum. Python is most praised for its elegant syntax and readable code, if you are just beginning your programming career python suits you best.
PHP
Fast, flexible and pragmatic, PHP powers everything from your blog to the most popular websites in the world.
JavaScript
JavaScript is most known as the scripting language for Web pages, but used in many non-browser environments as well such as node.js or Apache CouchDB. It is a prototype-based, multi-paradigm scripting language that is dynamic,and supports object-oriented, imperative, and functional programming styles.
See all alternatives