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

.NET Core

+ 1

+ 1
Add tool

.NET Core vs Spring: What are the differences?

.NET Core: An Open Source, General-Purpose Development Platform Maintained by Microsoft and the .NET Community. Cross-platform (supporting Windows, macOS, and Linux) and can be used to build device, cloud, and IoT applications; Spring: Provides a comprehensive programming and configuration model for modern Java-based enterprise applications. A key element of Spring is infrastructural support at the application level: Spring focuses on the "plumbing" of enterprise applications so that teams can focus on application-level business logic, without unnecessary ties to specific deployment environments.

.NET Core and Spring can be categorized as "Frameworks (Full Stack)" tools.

"Great performance" is the primary reason why developers consider .NET Core over the competitors, whereas "Java" was stated as the key factor in picking Spring.

.NET Core and Spring are both open source tools. Spring with 30.6K GitHub stars and 19.6K forks on GitHub appears to be more popular than .NET Core with 11.2K GitHub stars and 2.41K GitHub forks.

According to the StackShare community, Spring has a broader approval, being mentioned in 319 company stacks & 184 developers stacks; compared to .NET Core, which is listed in 54 company stacks and 71 developer stacks.

Advice on .NET Core and Spring
Needs advice

I am a graduate student working as a software engineer in a company. For my personal development, I want to learn web development. I have some experience in Springboot while I was in university. So I want to continue with spring-boot, but I heard about Django. I'm reaching out to the experts here to help me choose a future proof framework. Django or Spring Boot?

Thanks in Advance

See more
Replies (5)

Kamrul Hasan, Don't choose dying technologies with small communities. How many startups do you think use Spring and Django? Use Google Trends to compare technologies. Study the StackOverflow developer survey and job websites to see what technologies are wanted. Few teams can afford to train you to get up to their level so be a life-long learner. Embrace the dawn of a new industry and become an expert.

See more
Sulaiman Sanusi

I recommend you stick to Java Spring as you already have experience with the technology, i suggest you master this technology and then if Django seam to be very interesting to you, django is a framework you can easily pickup as python is also easy, you have to probably be able to manage the context switching between a static typed language like Java to dynamic language like python

See more
Christoph Becker

It depends on what you want. Spring is Java-based whereas Django is Python-based. The question rather is Java vs Python. I personally recommend Python as it's shorter and easy to learn. But Java has advantages in really big systems.

See more
Gonzalo Fernández

Hi Kamrul,

It really depends on the kind of project and whether you feel more comfortable with Java or Python. Both are excellent frameworks, with a huge community and learning material. I've been working with Spring Boot since I started coding almost and I can assure you it's the perfect combination for Java. The learning curve may be harder that Django, but once you know the basics you're good to go. I can't tell you much about Django but you must now by now that it has a great reputation with Python users. In any case I don't think you can go wrong with any of these two. My advice is, if you are already familiar with the Spring framework, give Spring Boot a try, because you're going to find out that it just makes the whole Spring experience so much easier. Let us know what you chose!

See more

Both are in active development and had huge community support. It really depends on you what you are comfortable with. Both are married to their respective languages. I choose Python over Java because of its simplicity and readability. To develop in java you need to write a lot of code. That's how java is. The best part I love with Django is its synchronization with Databases.

See more
Decisions about .NET Core and Spring

I was researching multiple high performance, concurent//parallel languages for the needs of authentication and authorization server, to be built on microservice architecture and Linux OS. Node.js with its asynchronous behavior and event loop suits the case best. Python Django & Flash turns to be slower and .NET Core & Framework wasn't the best choice for the Linux environment at the time (summer 2018).

I also tested Go lang and Rust, although they didn't meet the quick prototyping criteria as both languages are young and lacking libraries or battle-tested ORM.

See more

There has been a lot of buzz around having PostgreSQL for ASP.NET Core 3.1 web apps. But Configuring Identity Server 4 with PostgreSQL is a real challenge. I've made a simple video to configure the ASP.NET Core 3.1 based Web application that uses AngualrJS as front end with Single Page App capabilities with Identity Server 4 talking to the PostgreSQL database. Check out this Video tutorial on how to do that in detail You can access the entire code here on github

See more
Get Advice from developers at your company using StackShare Enterprise. Sign up for StackShare Enterprise.
Learn More
Pros of .NET Core
Pros of Spring
  • 29
    Perfect to do any backend ( and a fast frontend) stuff
  • 25
  • 25
  • 23
    Great performance
  • 17
    All Platform (Mac, Linux, Windows)
  • 16
    It promotes better codebase architectures and organizat
  • 10
    Very fast development with templates
  • 225
  • 155
    Open source
  • 133
    Great community
  • 121
    Very powerful
  • 113
  • 63
    Lot of great subprojects
  • 59
    Easy setup
  • 44
    Convention , configuration, done
  • 39
  • 30
    Love the logic
  • 12
    Good documentation
  • 10
    Dependency injection
  • 10
  • 7
  • 6
  • 3
    Strong typing
  • 3
    Makes the hard stuff fun & the easy stuff automatic
  • 2
  • 2
    Great Desgin
  • 2
    Best practices
  • 2
    Code maintenance
  • 2
    Easy Integration with Spring Security
  • 2
    Integrations with most other Java frameworks
  • 1
    Java has more support and more libraries
  • 1
    Live project
  • 1
    OracleDb integration
  • 1
    Supports vast databases
  • 1
    Large ecosystem with seamless integration

Sign up to add or upvote prosMake informed product decisions

Cons of .NET Core
Cons of Spring
    Be the first to leave a con
    • 15
      Draws you into its own ecosystem and bloat
    • 3
      Verbose configuration
    • 3
      Poor documentation
    • 3
    • 2
      Java is more verbose language in compare to python

    Sign up to add or upvote consMake informed product decisions

    What is .NET Core?

    Cross-platform (supporting Windows, macOS, and Linux) and can be used to build device, cloud, and IoT applications.

    What is Spring?

    A key element of Spring is infrastructural support at the application level: Spring focuses on the "plumbing" of enterprise applications so that teams can focus on application-level business logic, without unnecessary ties to specific deployment environments.

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

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

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

    What tools integrate with .NET Core?
    What tools integrate with Spring?

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

    Blog Posts

    What are some alternatives to .NET Core and Spring?
    .NET is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.
    ASP.NET Core
    A free and open-source web framework, and higher performance than ASP.NET, developed by Microsoft and the community. It is a modular framework that runs on both the full .NET Framework, on Windows, and the cross-platform .NET Core.
    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!
    It is a software platform designed to allow developers to easily create cross platform applications part of the .NET Foundation. It is an open source implementation of Microsoft's .NET Framework based on the ECMA standards for C# and the Common Language Runtime.
    Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices.
    See all alternatives