前言
从今天我将会写.net core实战系列,以我最近完成的短信服务作为例子。该系列将会尽量以最短的时间全部发布出来。源码也将优先开源出来给大家。
源码地址:https://github.com/SkyChenSky/Sikiro.SMS
.NET CORE简介
ASP.NET Core 是一个跨平台的高性能开源框架,它不是ASP.NET Framework延伸,而是重生,存在质的区别。不得不夸微软,使ASP.NET Core开源是一大进步就是,其源码可以在github上搜索到。其代码的透明度可以为大家更好的把控与理解,并且使大家开发.NET Core的项目有更好的完成度。
ASP.NET Core的出现为了摆脱.NET Framework十多年来的Windows系统下的束缚,其开源也是为了建立更好的技术生态环境。
如今,你可以跨所有平台,任意的在Windows、Mac和Linux等设备上开发并且运行你的 ASP.NET Core 应用。当然你也可以用你喜爱的托管程序( IIS、Nginx、Apache、Docker )进行部署
.NET CORE版本历史
版本 | 发布时间 |
---|---|
1.0 RC1 | 2016年2月15日 |
1.0 RC2 | 2016年5月16日 |
1.0 | 2016年6月27日 |
1.1 | 2016年11月16日 |
2.0 | 2017年8月14日 |
2.1 | 2018年5月30日 |
了解一个技术本质就是追溯他的发展历程。
- 2016年1月ASP.NET5 改名 ASP.NET Core 1.0
- 2016年6月ASP.NET Core 1.0正式发布,与其一起的还有.NET Core Runtime,.NET Core SDK,.NET Core Windows Server Hosting,Entity Framework Core 1.0。
- 当时我并没有优先吃螃蟹,因为经验告诉我,微软的1.0版本的项目更多的是了解与学习。因为还有很多大量的优秀的开源组件并没及时支持。
- 2016年8月,伴随着Visual Studio 2017 15.3发布,ASP.NET Core 2.0的出世冲击着我们整个.NET。
- 当时我也优先以管理后台作为了一个小项目试行,当项目开始不到一半,经验又告诉我,ASP.NET Core已经可以完完全全开发正式的项目了。
.NET CORE优势
跨平台
可以随时在Windows、Mac和Linux上开发并部署你的项目。
多工具选择
Visual Studio Code、Visual Studio、Jetbrains Rider
高性能
更高的效率,更小的内存占用。虽然我没亲自测试过,不过网上很多测试数据。
灵活部署
ASP.NET Core不再是基于System.Web.dll,不再需要依赖IIS与windows, IIS、Nginx、Apache、Docker供你选择
命令行工具
.NET程序所有的运行脚本都可以用命令行工具执行(cmd,bash),因而无需花费更多的时间成本重复学习。
指令 | 帮助 |
---|---|
dotnet new | 产生新的基本 .NET 项目内容 |
dotnet restore | 还原所参考的 NuGet 包 |
dotnet build | 建造 .NET 项目 |
dotnet publish | 产生可发行的 .NET 项目 |
dotnet run | 编译与立即运行 .NET 项目 |
dotnet repl | 引导交互式的对话 |
dotnet pack | 将项目的产出封装成 NuGet 包 |
模块化
按需使用组件包,使你的应用程序更新的高效、轻便、健壮。
结束
自2016年的.NET CORE诞生,我们见证了微软一步步的改变与进步,前段时间花了巨资收购了GitHub(不知道他在下一步什么棋)。虽然身边很多原本用.NET的公司转型了JAVA,然而这个世界的本质其实就是一个周期变动与轮回。
我们不求跟风,但愿精益求精