Net Framework 是什么
1.Net Framework 是Net的一种实现,在此类库上我们可以使用C#,VB,F#进行程序编写,主要用于构建Windows 下的应用程序
2.有两部分组成部分:
i. 公共语言运行时(CLR)处理应用程序
ii. 基础类库(BCL)这是可重用的代码库,使用其编写进行应用程序编写
3.在执行的过程中.Net编写的代码将会编译成一种称为中间语音(IL)存储形式以DLL和EXE后缀名结尾的文件为主,当程序运行时CLR会编译转换为机器代码。
4. Net Framework 本身不是跨平台的也就是话说仅限于运行在Windows 平台,想要跨平台需要借助第三方。
Net Core 是什么
1.Net Core 的出现就是为了适应软件开发的趋势,因为各种不同的设备还有云计算的出现,其他的操作系统使用量也有所增加,如果Net 不发生改变也就意味着市场将会越来越小。Net Core的出现用于满足当前以及未来软件开发的需求
2.NetCore是一个全新的框架,是.Net的跨平台的实现,它和Net Framework有很多共同的特性,这也就意味着Net Framework从业者转到Net Core 将会变的很简单。
3.Net Core的所有方面都是开源的,无论是类库,运行时,编译器。NET Core3.0之后支持了C#,VB,F#。
Net Standard 是什么
1. Net Standard 是一个规范,它定义了Net Framewoek和Net Core必须实现的Api,它的出现为各种平台上开发的.Net人员解决了代码共享问题,但是仅用于开发类库,意思就是说如果你的类库是Net Standard规范的,那么此类库既可以是Net Framewoek也可以是Net Core类库。
2. 微软提供的的图表详细说明了各个不同版本的兼容情况
i. 如果我们的类库是NET Standard 2.0版本的如果想在Net Framework和Core两种实现中使用,则根据此图表,我们必须为.NET Core项目选择2.0版本和NET Framework 4.6.1的版本
总结:
每个.NET版本都对应一个.NET Standard版本
从上面我们可以看出,.Net 是一种标准,而Net Framework 和NetCore 是.Net 的一种实现。而Net Standard 是一个规范。
.NET5 是什么
这将是.NET系列中的下一个重要版本。
将来只会有一个.NET,您将可以使用它来瞄准Windows,Linux,macOS,iOS,Android,tvOS,watchOS和WebAssembly等。
从.NET Core项目开始以来,我们已经向该平台添加了大约五万个.NET Framework API。.NET Core 3.0弥补了.NET Framework 4.8的大部分剩余功能差距,从而启用了Windows Forms,WPF和Entity Framework6。.NET5在此工作的基础上,利用.NET Core和Mono的优势来创建了一个单一平台,您可以将其用于所有现代.NET代码。
.NET 5 = .NET Core vNext
.NET 5是.NET Core的下一步。该项目旨在通过一些关键方式来改进.NET:
- 生成一个.NET运行时和框架,该框架可在任何地方使用,并具有统一的运行时行为和开发人员经验。
- 通过充分利用.NET Core,.NET Framework,Xamarin和Mono来扩展.NET的功能。
- 用单个代码库构建该产品,开发人员(Microsoft和社区)可以一起工作并一起扩展,从而改善了所有方案。
这个新的项目和方向改变了.NET的规则。使用.NET 5,无论您要构建哪种类型的应用程序,您的代码和项目文件都将具有相同的外观。您将可以使用每个应用程序访问相同的运行时,API和语言功能。这包括几乎每天都致力于corefx的新性能改进。