Dot Net Framework Different Versions and Differences
Dot Net
Frameworks
The latest version of .NET,
currently .NET 8, offers several core components to support modern software
development, such as the Common Language Runtime (CLR), Common Type System
(CTS), and an efficient garbage collection system. Here’s a breakdown of each:
Version
|
.NET Standard |
|||||||||
|
.NET |
5 |
6 |
7 |
8 |
9 |
|
|
|
|
|
.NET Core |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
2 |
3 |
|
.NET Framework
1 |
4.5 |
4.5 |
4.5.1 |
4.6 |
4.6.1 |
4.6.1 2 |
4.6.1 2 |
4.6.1 2 |
N/A3 |
Differences
|
Aspect |
.NET Standard |
.NET (5 and later) |
.NET Core |
.NET Framework |
|
Purpose |
Defines a
specification for APIs across .NET platforms. |
Unified
platform replacing .NET Framework and Core. |
Cross platform,
open-source .NET runtime. |
Windows-only
runtime for building applications. |
|
Compatibility |
Aims
for cross-platform API compatibility. |
Fully
supports cross-platform development. |
Supports
Windows, Linux, macOS. |
Limited
to Windows. |
|
Current Status |
Used for
library development; no new versions. |
Actively
developed (e.g., .NET 7, .NET 8). |
Superseded by
.NET (5 and later). |
No active
development; maintenance only. |
|
API Support |
A
subset of APIs shared across .NET implementations. |
Comprehensive;
includes desktop, web, cloud. |
Modern
APIs with performance improvements. |
Broad
APIs but Windows-centric. |
|
Target Audience |
Library
developers targeting multiple platforms. |
Developers
needing a single platform for all. |
Developers
prioritizing performance and portability. |
Developers
maintaining legacy Windows apps. |
|
Cross-Platform Support |
Yes,
through implementations (e.g., .NET Core). |
Yes
(Windows, Linux, macOS). |
Yes
(Windows, Linux, macOS). |
No |
|
Deployment |
Libraries only,
used by implementations. |
Flexible
(self-contained or framework-dependent). |
Flexible
(self-contained or framework-dependent). |
Framework-dependent. |
|
Backward Compatibility |
High
compatibility between versions. |
High
compatibility across .NET 5 and later. |
Moderate;
some breaking changes vs. .NET Framework. |
Generally
backward-compatible. |
|
Performance |
Not applicable
(API specification only). |
High
performance and optimized runtime. |
High
performance and optimized runtime. |
Less optimized
for modern workloads. |
Differences in Structure and
Configurations
|
Feature |
.NET Core |
.NET 8 |
.NET 9 |
|
wwwroot |
Used for static files in ASP.NET Core. |
Same as .NET Core, no significant changes. |
Similar to .NET 8 with optimizations. |
|
Startup.cs |
Contains
app configuration and middleware setup. |
Replaced
by Program.cs in modern templates. |
Program.cs
is further streamlined. |
|
appsettings.json |
Stores configuration data for apps. |
Continued use with enhanced support for
environment-specific settings. |
Enhanced for better cloud integration. |
|
Program.cs |
Entry
point of the application. |
Unified
with Startup.cs for simpler configuration. |
Simplified
even further with new templates. |
Lifecycle and Request Pipeline
|
Aspect |
.NET Core |
.NET 8 |
.NET 9 |
|
Application Lifecycle |
Explicitly defined in Startup.cs. |
Merged into Program.cs for better clarity. |
Additional hooks for AI-driven insights. |
|
Request
Pipeline |
Built with
middleware components. |
Improved
middleware handling with better diagnostics. |
Enhanced
for high-performance workloads. |
Dependency Injection
|
Aspect |
.NET Core |
.NET 8 |
.NET 9 |
|
Dependency Injection |
Built-in support with IServiceCollection. |
Enhanced with better scoped services and support for
generics. |
Improved performance and flexibility. |
|
Service
Registration |
Register
services in Startup.cs. |
Register
services directly in Program.cs. |
Same as
.NET 8 with optimizations. |
Comments
Post a Comment