前几天我在一个群里看到有关这方面的讨论,最后感觉讨论的不是很清晰,有幸的是我们的项目去年就开始迁移NetCore的调研了,我个人多多少少也是有过这方面的研究。下面我将说一下我自己对着三个的认识如果有不足的地方,请大家指出。

大家的讨论是这个问题引起的如下:

NetCore

 Net Framework

Net Standard

最终大家想了解的是这些的区别是什么。

  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 Framework 和NetCore 是.Net 的一种实现。而Net Standard 是一个规范。

理解:

.net是一个开发平台,一个开发平台有编译器,运行时,类库。其中类库是API集合。net standard是API规范,约定有哪些API,net framework与net core是net standard的实现,这里的实现是类库的实现

  

【转】Net Framework,Net Core 和 Net Standard 区别相关推荐

  1. .NET Framework、 .NET Core、.NET Standard区别。

    感谢书籍<ASP.NET Core 技术内幕与项目实战>及其作者杨中科. .NET开发平台是:.NET Framework. .NET Core.Xamarin/Mono的统称 .NET ...

  2. 通俗易懂,什么是.NET/.NET Framework/.NET Core/.Net Standard?

    什么是.NET?什么是.NET Framework?本文将从上往下,循序渐进的介绍一系列相关.NET的概念,先从类型系统开始讲起,我将通过跨语言操作这个例子来逐渐引入一系列.NET的相关概念,这主要包 ...

  3. .net framework、.net standard、 .net core .net 5/6 区别

    .net framework..net standard. .net core .net 5/6 区别 之前一直使用.net framework框架编写程序,这几年微软的动作有点大,更新迭代的有些快, ...

  4. .net standard类库同时兼容Framework和Core获取配置文件

    一.新建.net standard类库 二.修改.csproj项目文件 打开项目文件 修改TargetFramework为TargetFrameworks:注意:多了个s:增加framework版本: ...

  5. C# .Net Framework、.Net Core和.Net Standard的区别

    .Net Core .NET Core 是一个开源.跨平台的开发平台,可以用来构建现代.可伸缩和高性能的跨平台软件应用程序的,包括Asp.Net Core.WPF.WInform等..Net Core ...

  6. .NET Core和.NET Standard有什么不同

    近日,微软发布了.NET Core 2.0,但是开发人员中间仍然存在一些疑惑,就是.NET Core..NET Standard.Xamarin和.NET Framework有什么不同. .NET F ...

  7. 揭示.NET Core和.NET Standard

    作为.NET家族的最新成员,有很多关于.NET Core和.NET Standard的误解,以及它们于.NET Framework之间的区别.在这篇文章,我会准确的解释他们究竟是什么,并看看何时应选择 ...

  8. .Net Core及.Net Standard主要概念回顾

    在.Net Core之前,选择编译目标是一个相对简单的操作.现在,开发人员面临多种可能,选择一个目标不再那么显而易见了.要想对.Net Core有一个全面的了解,就要了解两个主要的概念:"目 ...

  9. .NET Standard - 论 .NET Core 和 .NET Standard关系

    .NET Standard - 论.NET Core 和 .NET Standard关系 作为 .NET 系列的最新成员,.NET Core 和 .NET Standard 的概念及其与 .NET F ...

最新文章

  1. SQL取出每个产品的Top n 条记录
  2. AICompiler动态shape编译框架案例和效果数据
  3. Windows下窗口的生命周期
  4. iOS 端容器之 WKWebView 那些事
  5. 帝国CMS7.5仿金色财经整站源码+手机端+会员中心+投稿-财经综合门户
  6. Unity应用架构设计(4)——设计可复用的SubView和SubViewModel(Part 2)
  7. 绿坝现漏洞政府天价难护航
  8. 微信小程序(云开发)----微信支付
  9. 光致变色染料的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  10. 软件测试自动生成测试数据,软件测试中测试数据的自动生成方法浅析
  11. python创建窗体_python生成窗口
  12. C++课程设计(校车订票系统)
  13. data类型的Url格式--url(data:image/gif;base64,AAAA):把小数据直接嵌入到Url中
  14. VMware Workstation 15界面,英文改中文
  15. 【产品】如何了解行业需求、痛点和发展机会
  16. 《Head First Java》20201023读书笔记
  17. 利用Picgo+github建立图床
  18. 智慧校园平台源码 智慧班牌源码 人脸识别技术 电子班牌源码 家校互联小程序源码
  19. SP2升级SP3遭遇“空间不足”解决方案
  20. 第38篇:和骏君清华大学聊区块链

热门文章

  1. python 字符串format使用
  2. 怎样解决MySQL数据库主从复制延迟的问题?
  3. Linux的#和$区别
  4. 流言终结者——C语言内存管理
  5. Android-Animations的使用大全之二:Frame Animation和其他
  6. 第五课 机器学习中的特征工程
  7. [Leetcode][JAVA]第[29]题[两数相除][二分法]
  8. php 创建数据库并填充,php操作mysql--连接数据库创建表填充表
  9. ps aux grep java_linux命令ps-aux监控java进程
  10. 上传本地项目到gitee_用git上传本地文件到码云gitee的方法