NETStandard,NETFx,Mono,NETCore,ASPNetCore 之间关系的整理
因为现在很多人对这几者之间的关系还不甚了解,这里根据我所知来做一个大概的介绍......
.NET Standard:
.NET标准,只要符合这个标准实现类库,即可在支持此标准的Runtime上运行
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
.NET Framework:
完整的.NET,只支持Windows,不同版本支持的.NET Standard不同,最新支持.NET Standard 2.x
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Mono:
Mono即为.NET Framework的跨平台完整实现(除去WPF/WCF等少部分未实现),支持 X64/X86/部分ARM 平台,
同样支持.NET Standard,不同版本支持的.NET Standard不同,最新支持.NET Standard 2.x,
注:
使用Mono对现有项目进行跨平台需要注意项目所引用的库是否使用了Windows独有的功能/API等
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
.NET Core:
.NET跨平台实现的版本,支持X64/X86/部分ARM平台,虽说是.NET跨平台实现的版本,但和原来的.NET Framework实际有极大的不同,
包括不同的底层实现(如 RyuJIT,Core CLR,LLILC 等),性能更加优越等等,
并且.NET Core也是完全对.NET Standard的支持,最新支持.NET Standard 2.x
(有兴趣的小伙伴可以搜一搜博客园中对.NET Core的性能测试文章)
注:
依托于.NET Core的应用程序/WEB程序可直接发布内嵌Runtime的版本,无需额外安装Runtime环境
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
ASP.NET Core(MVC/WebAPI等等):
最新的.NET WEB开发框架,完全按照.NET Standard实现,完全的模块化安装(按需安装模块),
没有ASP.NET的System.Web.dll这一大坨的拖累,性能优于原有ASP.NET(MVC/WebAPI)(有兴趣的小伙伴可以测试一下),
同样,因为是完全按照.NET Standard实现的WEB框架,
所以可运行在: .NET Framework , Mono , .NET Core 上,
注:
由于至今ORACLE未出.NET Core的驱动,并且 .NET Core 现有第三方类库较少,
所以可考虑使用.NET Framework/Mono作为 ASP.NET Core 的运行环境
(但使用第三方库需要注意是否调用了Windows独有功能/API等)
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
以上.....如有不对还望诸位多多指正....别误导了别人.....
(由 玩双截棍的熊猫 2017-11-30 整理发布,转载请注明出处和链接以及作者名字...)
NETStandard,NETFx,Mono,NETCore,ASPNetCore 之间关系的整理的更多相关文章
- 云计算三种服务模式SaaS、PaaS和IaaS及其之间关系(顺带CaaS、MaaS)
云计算架构图 很明显,这五者之间主要的区别在于第一个单词,而aaS都是as-a-service(即服务)的意思,这五个模式都是近年来兴起的,且这五者都是云计算的落地产品,所以我们先来了解一下云计算是什 ...
- 【转】Oracle - 数据库的实例、表空间、用户、表之间关系
[转]Oracle - 数据库的实例.表空间.用户.表之间关系 完整的Oracle数据库通常由两部分组成:Oracle数据库和数据库实例. 1) 数据库是一系列物理文件的集合(数据文件,控制文件,联机 ...
- 2.java面向对象类与类/类与对象之间关系详解
继承.实现.依赖.关联.聚合.组合的联系与区别 下面的内容很基础,同时也很简单,但是也很重要. 继承 指的是一个类(称为子类.子接口)继承另外的一个类(称为父类.父接口)的功能,并可以增加它自己的新功 ...
- TLS与SSL之间关系——SSL已经被IEFT组织废弃,你可以简单认为TLS是SSL的加强版
TLS与SSL之间关系 原文地址:SSL vs. TLS - What's the Difference? from:https://juejin.im/post/5b213a0ae51d4506d4 ...
- Excel Open Xml中CellStyleXfs,cellStyle,cellXfs之间关系的总结
最近这几个东东打交道了几天,总算是弄明白了,综合多个帖子,现在总结如下: 在创建stylesheet时,必须创建fonts,Fills,Borders 和cellXfs(CellFormats)四个节 ...
- 类之间关系理解:组合>聚合>关联>依赖;实现,继承
类之间关系理解:组合>聚合>关联>依赖:实现,继承 1. 从类之间的关系来看,不外乎以下几种 组合>聚合>关联>依赖:实现,继承 且可以分为以下两类: (1)实现, ...
- 深入了解Looper、Handler、Message之间关系
深入了解Looper.Handler.Message之间关系 前言及简介 上个星期我们整个项目组趁着小假期,驱车去了江门市的台山猛虎峡玩了两个多钟左右极限勇士全程漂流,感觉真得不错,夏天就应该多多玩水 ...
- Hibernate_day03--课程安排_表之间关系_一对多操作
Hibernate_day03 上节内容 今天内容 表与表之间关系回顾(重点) Hibernate的一对多操作(重点) 一对多映射配置(重点) 一对多级联操作 一对多级联保存 一对多级联删除 一对多修 ...
- 类与类之间关系,用C#和JavaScript体现
前言 在面向对象中,类之间的关系有六种,分别是: 关联关系(Association) 泛化关系(Generalization) 依赖(Dependency) 聚合(Aggregation) 组合(Co ...
随机推荐
- BootStrap教程完整版
http://www.runoob.com/bootstrap/bootstrap-navbar.html
- jfinal使用配置文件注意事情
使用Popkit @Override public void configConstant(Constants me) { me.setViewType(ViewType.JSP); PropKit. ...
- RabbitMQ 笔记-Exchanges
Procuder Publish的Message进入了Exchange.接着通过"routing keys", RabbitMQ会找到应该把这个Message放到哪个queue里. ...
- Android 分包 MultiDex 策略总结
1.分包背景 我们在Android开发中,会不断的在App代码里面增加新功能,引入新的类库,如果不加控制的话,那么会碰到编辑器IDE爆出一下错误: Error:Execution failed for ...
- 容器与Docker简介(三)Docker相关术语——微软微服务电子书翻译系列
本节列出了在更加深入Docker之前应该熟悉的术语和定义. 有关详细的定义,请参阅Docker提供的术语表. 容器镜像(Container image):具有创建容器所需要的所有依赖和信息的包. 镜像 ...
- module、export、require、import的使用
module 每个文件就是一个模块.文件内定义的变量.函数等等都是在自己的作用域内,都是自身所私有的,对其它文件不可见. 每个文件内部都有一个module对象,它包含以下属性 id: 模块的识别符,通 ...
- hdu 6215 -- Brute Force Sorting(双向链表+队列)
题目链接 Problem Description Beerus needs to sort an array of N integers. Algorithms are not Beerus's st ...
- C++中引用的底层实现
为了研究一下C++中引用的底层实现,写了一个小代码验证其中的基本原理. 引用是一个变量的别名,到底会不会为引用申请内存空间?如果申请空间,空间存放的是什么,下面的代码就主要解决这个疑问. 代码如下,详 ...
- 用代理IP进行简单的爬虫——爬高匿代理网站
用西刺代理网站的IP爬高匿代理网站 import re import _thread from time import sleep,ctime from urllib.request import u ...
- SQL Server Backup & Restore
USE [master]; GO CREATE DATABASE test; GO CREATE DATABASE test2; GO BACKUP DATABASE test TO DISK = ' ...