📜  .NET Core 和 .NET Framework 之间的差异

📅  最后修改于: 2021-09-13 02:33:06             🧑  作者: Mango

.NET Core是一个免费的开源通用开发平台,用于在 Windows、Linux 和 macOS 操作系统上开发基于云的现代软件应用程序。它在多个平台上运行,并且已经过改进以使 .NET 快速、可扩展和现代。 .NET Core 是微软的重大贡献之一,在 MIT 许可下发布。它提供以下功能:

  • 跨平台
  • 开源
  • 高性能
  • 多种环境和开发模式等。

.NET是由 Microsoft 设计和开发的软件框架。 .Net 框架的第一个版本是 2002 年的 1.0。简单来说,它是一个虚拟机,用于编译和执行用不同语言编写的程序,如 C#、VB.Net 等。它用于开发表单基于应用程序、基于 Web 的应用程序和 Web 服务。 .Net 平台上有多种可用的编程语言,VB.Net 和 C# 是最常见的。它用于为 Windows、移动设备、Web 等构建应用程序。它提供了许多功能,还支持行业标准。

.NET-Core-和-.NET-Framework 之间的差异

.NET Framework 支持 60 多种编程语言,其中 Microsoft 设计和开发了 11 种编程语言。 .NET Framework 支持但不是由 Microsoft 设计和开发的其余非 Microsoft 语言。

下表列出了 .Net Core 和 .Net Framework 之间的差异:

BASED ON

.NET Core

.NET Framework

Open Source .Net Core is an open source. Certain components of the .Net Framework are open source.
Cross-Platform Works on the principle of “build once, run anywhere”. It is compatible with various operating systems — Windows, Linux, and Mac OS as it is cross-platform. .NET Framework is compatible with the windows operating system. Although, it was developed to support software and applications on all operating systems.
Application Models .Net Core does not support desktop application development and it rather focuses on the web, windows mobile, and windows store. .Net Framework is used for the development of both desktop and web applications as well as it supports windows forms and WPF applications.
Installation .NET Core is packaged and installed independently of the underlying operating system as it is cross-platform. .NET Framework is installed as a single package for Windows operating system.
Support for Micro-Services and REST Services .Net Core supports the development and implementation of micro-services and the user has to create a REST API for its implementation. .Net Framework does not support the development and implementation of microservices but it supports the REST API services.
Performance and Scalability  .NET Core offers high performance and scalability. .Net Framework is less effective in comparison to .Net Core in terms of performance and scalability of applications.
Compatibility .NET Core is compatible with various operating systems — Windows, Linux, and Mac OS. .NET Framework is compatible only with the Windows operating system.
Android Development .NET Core is compatible with open-source mobile application platforms, i.e. Xamarin, through the .NET Standard Library. Developers use Xamarin’s tools to configure the mobile app for specific mobile devices such as iOS, Android, and Windows phones. .NET Framework does not support any framework for mobile application development.
Packaging and Shipping .Net Core is shipped as a collection of Nugget packages. All the libraries of .Net Framework are packaged and shipped together.
Deployment Model Whenever the updated version of .NET Core gets initiated; it is updated instantly on one machine at a time, thereby getting updated in new directories/folders in the existing application without affecting it. Thus, .NET Core has a good and flexible deployment model. In the case of .Net Framework, when the updated version is released it is first deployed on the Internet Information Server only.
CLI Tools .NET Core provides light-weight editors and command-line tools for all supported platforms. .Net Framework is heavy for Command Line Interface and developers prefer to work on the lightweight Command Line Interface.