NET Core是开源跨平台开发框架,有哪些优点?是如何构成的?

01第1节:什么是.NET Core?

.NET Core是美国微软(Microsoft)公司继.NET Framework开发框架之后推出的跨平台开发框架。

微软为了与Java生态相抗衡,才推出了.NET Core,不仅跨平台,且还是免费和开源的。

.NET Core与.NET Framework是并列在.NET体系结构中的,另外还有收购的Xamarin,Xamarin主要用于移动端APP的开发。

在这里要注意,.NET Core重点是跨平台,使用的语言以C#为主,使用此平台开发的应用程序可以运行在微软的Windows系列的操作系统上,还可以运行在苹果的macOS、及市场上的Linux操作系统上。

到目前为止,.NET Core最新版本是.NET Core 3.1,配套使用的C#语言的版本是8.0。同时,也将桌面应用程序、WPF应用程序从.NET Framework移植过来了。

.NET Core是微软重新开发的一套全新的开发框架,因此,它对之前的.NET Framework进行了大量的优化,在性能上更好,启动速度更快。

.NET Core是目前为止.NET平台上最被大家推崇的跨平台开发框架。

02第2节:.NET Core的优点

微软为什么要推出.NET Core呢?首先是迫于其它开发框架的竞争,微软如果再不推出跨平台的.NET Core,可能会失去更多的市场客户。

而微软早期的.NET Framework只能运行在Windows操作系统上,局限性太强,这只能使用微软的生态圈里,其实这是一种封闭的发展,得不到更多企业和开发者的认可。

.NET Framework发展了几十年,功能越来越强大,但是也越来越臃肿,主要是依赖性太强,当我们对代码进行一点的修改,就会造成大量的牵动,导致维护起来成本很高。

而.NET Core解决了此问题,优化的特别小巧,而对于其它的组件,则只需要使用NuGet工具添加即可。当依赖性小时,我们开发的应用程序只添加我们需要的程序集,不需要的不用添加,这样保证了最小满足。

使用.NET Core开发的应用程序,我们只需要编写一套代码,然后就可以在Windows、Linux、macOS这三大平台上运行了,减少了开发难度。

03第3节:.NET Core发展史

一、1.0版本:

微软在2016年6月27日正式发布了.NET Core的1.0版本,1.0版本只是一个尝鲜,部分开发者会使用该版本尝试开发一些跨平台的应用程序,但是对于企业来说,都是观望状态,不敢应用于正式环境中。

二、1.1版本:

同样,在2016年11月16日,微软又发布了.NET Core1.1版本,此时,微软引入了EF Core、ASP.NET Core。

并且,可以在Visual Studio 2015、Visual Studio Code和Visual Studio for Mac IDE中使用。

此时,控制台应用程序和ASP.NET Core MVC已经集成到.NET Core中了,可以开发这2种类型的应用程序。

三、2.0版本

在2017年8月14日,微软发布了.NET Core 2.0版本。

此时开发的ASP.NET Core应用程序可以在.NET Core上运行,还可以在.NET Framework上运行,路线好像走偏了,微软总想开发的东西包罗万象。

四、3.1版本

在2020年3月24日,微软发布了.NET Core 3.1版本,且功能已经很强大了,将Winform桌面应用程序、WPF应用程序已经移过来了。

这表明,我们可以在.NET Core平台上开发出C/S结构的客户端应用程序了。

注意:微软表示,.NET Core 3.1及3.x版本,将会长期支持,且开发的应用程序只能运行在.Net Core上,彻底抛弃了对.NET Framework的同时支持。

04第4节:.NET Core的构成

.NET Core是微软重新设计的开发框架,它与.NET Framework完全不同,这可以从底层的构建结构来看:

CoreCLR即时编译器。CoreFx,这是由重新设计的类库,这些类库,我们可以在C#编程中调用,以满足最基础的开发。

Roslyn:它是一种微软推出的一种新型的编译器,它支持C#/VB等,当你在VS工具中编译后发现有Roslyn文件夹,表示是使用该编译器编译代码的。CLI Tools:主要用于发布和开发的工具集,这是微软给我们提供的,这一系列的命令可以创建应用程序及运行。