大家都知道Java是跨平台的,.NET因为不具有跨平台的特性,被越来越多的开发者诟病,之前有各种间接的跨平台的方案,比如mono。但是由于各种兼容问题,最终 .NET Core出现了,它可以让程序在Window,macOS,Linux等系统上的开发和部署,并且可以在硬件设备,云服务,和嵌入式/物联网方案中进行使用。同时,微软也正在逐步将.NET Core的相关技术开源,相信.net core 实现稳定高效的跨平台。所以,最近有时间,打算总结一下 .Net Core 的相关知识。
为什么要使用 .NET Core?
首先为什么要使用core:
ASP.NET Core 是重新设计的 ASP.NET,更改了体系结构,形成了更精简的模块化框架。
ASP.NET Core 具有如下优点:
生成 Web UI 和 Web API 的统一场景。
集成新式客户端框架和开发工作流。
基于环境的云就绪配置系统。
内置依赖项注入。
轻型的高性能模块化 HTTP 请求管道。
能够在 IIS、Nginx、Apache、Docker 上进行托管或在自己的进程中进行自托管。
定目标到 .NET Core 时,可以使用并行应用版本控制。
简化新式 Web 开发的工具。
能够在 Windows、macOS 和 Linux 进行生成和运行。
开放源代码和以社区为中心。
ASP.NET Core 可以作为组件直接在 NuGet中安装使用。
.NET Core的特性
跨平台
可以在Windows,macOS,Linux上运行
灵活的部署机制
1.便携式应用(Portable applications)
这种部署机制和传统的.NET Framework相似,只要目标平台上存在.NET Core Runtime即可。
2.自宿主应用(Self-contained application)
顾名思义,这种部署机制将应用和运行时共同打包,即便目标平台上没有安装.NET Core Runtime也能正常使用
命令行工具
.NET程序所有的运行脚本都可以用命令行工具执行。
如何跨平台?
先来看一下.NET Framework和Core的大体结构:
其实.NET Framework本身是个"跨Windows"的平台, 像C#和VB等语言都遵守CLS, 编译成CIL执行。从我们多层架构设计的角度来看,.NET Core 重做了一个CoreCLR的运行时,更换最底层,从而实现"跨平台"。
开发环境安装
.net core 系统环境要求:
系统: windows 7 sp1 以上
Visual Studio:: 2017 15.3版本以上
需要安装的组件:
ASP.NET 和 Web 开发
.NET Core 跨平台开发
具体步骤如下:
1. 首先下载在线安装exe,官网地址:https://visualstudio.microsoft.com/zh-hans/vs/older-downloads/
2. 运行下载目录中的vs_Enterprise.exe安装。
都是简单的安装步骤,直接下一步即可。只是下载慢,安装时间比较长。
最后
以上,已经把对.net core 简单介绍完了,安装也很简单。后面会将具体的.net core 的开发。