.NET Core 概述
.NET Core是一个免费的、开源的、跨平台的、广泛使用的Web框架;它是由微软维护的。社区广泛参与支持的一个框架。.NET Core可以运行在:Windows、MacOS以及Linux操作系统上。
.Net Core可以用来开发各种不同的应用程序,例如:移动端、桌面端、Web、Cloud、IoT、机器学习、微服务、游戏开发等等。
.Net Core是从头到尾重新开发的一个模块化、轻量级、快速的、跨平台框架。它包含了运行一个.NET Core基本程序所必须的核心特性。其他特性,例如:Nuget包,你可以根据需要添加到应用程序中,所以.Net Core启动快,内存占用少,并且易于维护。
为什么使用.NET Core
.Net Framework有一些限制。例如,它只能运行在Windows平台上,此外还有,你需要针对不同的平台应用程序,例如:Windows桌面应用程序、Windows应用商店、Windows Phone以及Web应用程序,使用不同的.NET APIS;除此之外,.NET Framework自身的依赖项太多,应用程序任何一点小的改动,都会要修改很多地方。
时代发展到今天,跨平台的应用程序开发变得非常重要,通过跨平台开发,我们可以写一处代码,就可以各个平台都可以运行。使用.NET Core就可以轻松做到这一点。
.NET Core 优点
1.开源的框架:.NET Core是一个开源的框架,由微软维护,在Github上的地址是:https://github.com/dotnet/core ,此外.NET Core是一个.NET 基金会项目 。
你可以查看、下载、以及贡献源代码,通过下方的GitHub仓库:
- 语言编译平台Roslyn:https://github.com/dotnet/roslyn
- .Net Core运行时: https://github.com/dotnet/runtime
- .Net Core SDK仓库:https://github.com/dotnet/sdk
- ASP.NET Core仓库:https://github.com/dotnet/aspnetcore
2.跨平台:.Net Core可以运行在Windows、MacOS以及Linux操作系统上,对于每个操作系统有不同的.net core运行时,执行代码,生成相同的输出;
3.一致的架构:在不同的指令集架构中,以相同的行为执行代码,包括:x64、x86以及ARM。
4.支持广泛领域的应用:各种不同类型的应用程序,都能被开发并且运行在.NET Core平台上,例如:移动端应用程序、桌面端应用程序、Web网页应用程序、Cloud云应用、IoT物联网应用、机器学习、微服务、游戏开发领域等等。
5.支持多个语言:你可以使用C#、F#、以及Visual Basic编程语言来开发.NET Core应用程序。你可以使用你自己喜欢的开发工具【IDE】,包含:Visual Studio2017/2019、Visual Studio Code、Sublime Text、Vim等等。
6.模块化的结构:.Net Core通过使用Nuget包管理,支持模块化开发。有各种不同的Nuget包,可以根据需要添加到你的项目中,甚至.NET Core 类库也是以包管理的形式提供的。.NET Core应用程序默认的包就是:Microsoft.NETCore.App ,模块化的结构,减少了内存占用,提升了性能,并且更易于维护。
7.CLI工具:.Net Core包含CLI工具(Command-line interface)用于开发和持续集成。
8.更灵活的部署:.Net Core应用程序可以部署在用户范围内、或者系统范围内、或者Docker容器中;
9.兼容性:.NET Core通过使用.NET Standard标准,可以兼容.NET Framework以及Mono的API ;
.Net Core历史版本
.NET Core 3.1和2.1将会长期支持;
.NET Core 3.x 应用程序只能运行在.Net Core 框架上;
.Net Core 2.x 应用程序可以运行在.NET Core和.NET Framework上;
.Net Core的组成
.NET Core框架由下面几个部门组成:
CLI 工具:一系列用于开发和发布的工具;
Roslyn: C#、Visual Basic语言编译器;
CoreFX: 一系列的框架类库;
CoreCLR:基于CLR的即时编译器(Command Language Runtime)
有用的资源链接
1.在这里可以找到.NET Core 类型以及成员声明、文件、以及程序集:.NET Core Source Browser ;
2.获取.NET Core 类型帮助:.NET Core API Reference Docs ;
3.详细学习.NET Core,可以看这个: https://docs.microsoft.com/en-us/dotnet/core ;
4.下载.NET Core运行时以及SDK: https://dotnet.microsoft.com/download/dotnet-core ;