NET Core的介绍

 

.NET Core 是一个通用开发平台,它由微软和开源社区共同管理(git hub的.NET开源社区);

他支持Windows,macOS和Linux,并且可以运行在硬件设备中、云平台上和物联网嵌入式设备中;

.NET Core的主要标志性特征如下:

  • 弹性部署:他可以运行在你的应用内部,也可以被部署在一个服务器群集上;

  • 跨平台:他可以运行在Windows,macOS和Linux上;也可以移植到其他操作系统上;被支持的操作系统、CPU和应用场景,将会随着时间推移,越来越多;未来微软和其他公司、个人都会为此做出贡献;

  • 命令行工具:所有的产品应用都可以在命令行工具下执行

  • 兼容性:.NET Core通过.NET标准库(.NET Standard Library)实现兼容性,其兼容.NET Framework, Xamarin 和 Mono

  • 开源:它基于MIT 和 Apache 2开源,文档遵从CC-BY规范;.NET Core是.NET基金会的一个项目;

  • 微软支持:微软支持.NET Core,具体信息请查阅:https://www.microsoft.com/net/core/support/

.NET Core的主要组成部分如下:

  • .NET运行时(主要包括:类型系统、程序集加载、垃圾回收、原生程序的互操作接口、其他基础服务)

  • 一批框架类库(主要包括:原始数据类型、应用组成类型、基础工具集)

  • SDK工具集和语言编译器(.NET Core SDK提供最基础的开发支持)

  • dotnet应用加载器(运行时选择器、运行时装载器、程序集加载规则、SDK工具装载器)

支持的语言如下:

可以用C# 和 F#来开发.NET Core的类库和应用;

Visual Basic也将得到支持,但目前还没有;

编译器直接运行在.NET Core 中;

这样你可以随时随地编译你的.NET Core程序;

(一般你不会直接使用.NET Core提供的编译器,你会直接使用SDK提供的工具来编译你的程序)

编译器可以很好的和多种不同的IDE或者文本编辑工具来结合;

比如:Visual Studio, Visual Studio Code, Sublime Text 和 Vim;

你可以到OmniSharp找到你想要的语言开发环境(注意OmniSharp是非微软官方支持的民间组织)

.NET API和兼容性:

.NET Core可以被理解为一个跨平台版本的.NET Framework,它处于.NET基础类库层(BCL)

它实现了.NET标准库的规范;它提供的API是.NET Framework的子集;

在某些情况下,并不是所有.NET Framework提供的类型都被.NET Core实现了;

想进一步了解.NET Core的路线图,可以看这里:https://github.com/dotnet/core/blob/master/roadmap.md

与.NET标准库(.NET Standard Library)的关系:

.NET标准库是一种API技术规格,

它约束所有.NET实现必须遵从此规格,

只要遵从此规格的.NET的实现,就可以互相兼容;

.NET Core是一种.NET标准库的实现;

工作内容:

.NET Core自带命令行工具,可以运行独立的命令行程序、基于命令行的本地服务、基于命令行的文本游戏;

在.NET Core之上已经建立了一部分扩展应用模块,比如:

分发方式:

官方使用两种方式分发.NET Core,

一种方式是把.NET Core的分法包发布到NuGet.org上去;

一种方式是发布独立的安装包;

你可以通过VisualStudio等工具获取.NET Core

NET Core2的更多相关文章

  1. 一步步学习EF Core(3.EF Core2.0路线图)

    前言 这几天一直在研究EF Core的官方文档,暂时没有发现什么比较新的和EF6.x差距比较大的东西. 不过我倒是发现了EF Core的路线图更新了,下面我们就来看看 今天我们来看看最新的EF Cor ...

  2. .Net Framework下对Dapper二次封装迁移到.Net Core2.0遇到的问题以及对Dapper的封装介绍

    今天成功把.Net Framework下使用Dapper进行封装的ORM成功迁移到.Net Core 2.0上,在迁移的过程中也遇到一些很有意思的问题,值得和大家分享一下.下面我会还原迁移的每一个过程 ...

  3. 一起学ASP.NET Core 2.0学习笔记(一): CentOS下 .net core2 sdk nginx、supervisor、mysql环境搭建

    作为.neter,看到.net core 2.0的正式发布,心里是有点小激动的,迫不及待的体验了一把,发现速度确实是快了很多,其中也遇到一些小问题,所以整理了一些学习笔记: 阅读目录 环境说明 安装C ...

  4. 一起学ASP.NET Core 2.0学习笔记(二): ef core2.0 及mysql provider 、Fluent API相关配置及迁移

    不得不说微软的技术迭代还是很快的,上了微软的船就得跟着她走下去,前文一起学ASP.NET Core 2.0学习笔记(一): CentOS下 .net core2 sdk nginx.superviso ...

  5. Centos7.2下Nginx配置SSL支持https访问(站点是基于.Net Core2.0开发的WebApi)

    准备工作 1.基于nginx部署好的站点(本文站点是基于.Net Core2.0开发的WebApi,有兴趣的同学可以跳http://www.cnblogs.com/GreedyL/p/7422796. ...

  6. .NET Core2.0 MVC中使用EF访问数据

    使用环境:Win7+VS2017 一.新建一个.NET Core2.0的MVC项目 二.使用Nuget添加EF的依赖 输入命令:Install-Package Microsoft.EntityFram ...

  7. 一步一步带你做WebApi迁移ASP.NET Core2.0

    随着ASP.NET Core 2.0发布之后,原先运行在Windows IIS中的ASP.NET WebApi站点,就可以跨平台运行在Linux中.我们有必要先说一下ASP.NET Core. ASP ...

  8. asp.net core2.0网站的环境搭建和网站部署

    使用到的软件和硬件 1.       centos7.3服务器一台 2.       xshell.xftp 3.       vs2017 4.       .NET Core   1. 安装 li ...

  9. 前端基于react,后端基于.net core2.0的开发之路(1) 介绍

    文章提纲目录 1.前端基于react,后端基于.net core2.0的开发之路(1) 介绍 2.前端基于react,后端基于.net core2.0的开发之路(2) 开发环境的配置,注意事项,后端数 ...

  10. 前端基于react,后端基于.net core2.0的开发之路(2) 开发环境的配置,注意事项,后端数据初始化

    前端环境配置 项目介绍文章:前端基于react,后端基于.net core2.0的开发之路(1) 介绍 1.VSCode安装 下载地址:https://code.visualstudio.com/Do ...

随机推荐

  1. the art of seo(chapter eight)

    How Social Media and User Data Play a Role in Search Results and Rankings ***Correlation Between Soc ...

  2. (转)RTMP协议从入门到放弃

    转载自:  http://blog.csdn.net/shangmingyang/article/details/50837852 RTMP协议是Real Time Message Protocol( ...

  3. visualVM远程监控JVM

    对于完全没用使用过visualVM的初学者 环境:Windows PC上使用visualVM监控远端JVM @@@@jstatd方式连接@@@@ 1.Windows安装jdk,$JAVA_HOME/b ...

  4. poj 2069 Super Star——模拟退火(收敛)

    题目:http://poj.org/problem?id=2069 不是随机走,而是每次向最远的点逼近.而且也不是向该点逼近随意值,而是按那个比例:这样就总是接受,但答案还是要取min更新. 不知那个 ...

  5. 洛谷 P4336 黑暗前的幻想乡 —— 容斥+矩阵树定理

    题目:https://www.luogu.org/problemnew/show/P4336 当作考试题了,然而没想出来,呵呵. 其实不是二分图完美匹配方案数,而是矩阵树定理+容斥... 就是先放上所 ...

  6. Visual Studio 编译后去掉只读属性

    Visual Studio 编译后去掉只读属性 attrib $(TargetPath) -R attrib $(TargetDir)$(TargetName).pdb -R

  7. JavaScript高级程序设计学习笔记第三章--基本概念

    一.标识符: 1.区分大小写 2.命名规则: 第一个字符必须是一个字母.下划线(_)或一个美元符号($) 其他字符可以是字母.下划线.美元符号或数字 标识符中的字母也可以包含扩展的 ASCII 或 U ...

  8. iview之select选择框选中内容后有空格的问题

    导致原因: option组件格式化造成的.此处</Option>在另一行,只要和输出内容一行,就不会有空格了. <Select :label-in-value="true& ...

  9. jmp $

    in intel x86 instruction set, "jmp $" means jump to this instruction location, thus fallin ...

  10. web性能并发测试工具(转)

    导读:随着Web 2.0技术的迅速发展,许多公司都开发了一些基于Web的网站服务,通常在设计开发Web应用系统的时候很难模拟出大量用户同时访问系统的实际情况,因此,当Web网站遇到访问高峰时,容易发生 ...