DEV Community

CharlesV
CharlesV

Posted on

.Net implementations (Framework / Core) - A mindmapping

💢 It is not always an easy task to find your way back into Microsoft .Net implementations.

👉 I hope this mindmap can help you to quickly visualize the big picture :

Net-implementations.th.png

Mindmap : https://www.xmind.net/embed/A3HWW3
(up to date 2020-08)

.NET Standard

One word about .Net Standard :

  • .NET Standard is not an implementation of .NET
  • it is an API specification common to all implementations of .NET
  • it enables portability across different .NET implementations (.Net Framework, .Net Core, Mono, UWP and Xamarin)

.NET implementations

(from Microsoft official documentation)

A .NET app is developed for and runs in one or more implementations of .NET


.NET Framework

The original .NET implementation that has existed since 2002. .NET Framework 4.8 is out and announced to be its last one.

Use .NET Framework for your server application when:

  • Your app currently uses .NET Framework (recommendation is to extend instead of migrating)
  • Your app uses third-party .NET libraries or NuGet packages not available for .NET Core
  • Your app uses .NET technologies that aren't available for .NET Core

Console Applications

A program designed to be used via text-only computer interface

Windows Forms

To create Windows-based applications

Windows Presentation Foundation (WPF)

To create Windows-based applications using a resolution-independent and vector-based rendering engine

ASP.NET

A web framework for building websites and web applications using HTML, CSS, and JavaScript

ASP.NET MVC ASP.NET Web Apps ASP.NET Web APIs
To build web apps using the Model-View-Controller design pattern Build full stack web apps with HTML, CSS, JavaScript, and C# Build secure REST APIs on any platform with C#

Windows Service Applications

To create long-running executable applications that run in their own Windows sessions (app that is installed as a service)

Windows Communication Foundation (WCF)

A unified programming model for building service-oriented applications

Windows Workflow Foundation

An in-process workflow engine


.NET Core

A cross-platform implementation of .NET . Use it for your server application when :

  • you have cross-platform needs
  • you are targeting microservices
  • you are using Docker containers

Usefull links :

ASP.NET Core

A cross-platform, high-performance, open-source framework for building web apps and services, Internet of Things (IoT) apps, and mobile backends

Razor is a programming syntax used to create dynamic web pages with C#

ASP.NET Core MVC ASP.NET Core Blazor
To build web apps and APIs using the Model-View-Controller design pattern A framework for building client-side web UI with C#

> Blazor WebAssembly

A single-page app framework for building interactive client-side web app using WebAssembly (an open web standard)

> Blazor Server

Decouples component rendering logic. Blazor Server host Razor components on the server in an ASP.NET Core app. UI updates are handled over a SignalR connection.

(Windows Forms)

To migrate Windows Forms apps to .NET Core

(Windows Presentation Foundation (WPF))

To migrate WPF apps to .NET Core

Top comments (0)