.当今 net 生态系统如下:
从上面图中我们可以看到.net 主要分为三个部分 .net FrameWork,.net Core ,Xamarin
XAMARIN 主要用来构建APP的(包括IOS,Android Windows)主要用的是C#语言
The .NET Framework 这个是我们现在经常用的,用这个可以创建windows应用程序还有web applications ,现在你可以用它创建Winform ,UWP ,wpf 等等相关的应用程序 ,web 方面就是Asp.net MVC
.NET Core 是微软推出的最新的开源的,跨平台的框架,用它可以创建的应用可以运行在MAC,Linux上 。 .net core 支持UWP 和 ASP.NET Core,UWP即Windows 10 中的Universal Windows Platform简称。即Windows通用应用平台,在Win 10 Mobile/Surface(Windows平板电脑)/PC/Xbox/HoloLens等平台上运行,uwp不同于传统pc上的exe应用也跟只适用于手机端的app有本质区别。它并不是为某一个终端而设计,而是可以在所有windows10设备上运行。
我们该咋选呢,用哪个框架呢
这俩框架该咋选呢, .NET Core和.net framwork 各有优缺点,两者都不能取代对方 。现在说说他俩的优点和缺点
.net framwork 主要适用于:
没时间学习新技术
需要一个很稳定的运行环境,最近学习发布稳定版本
已经在使用现有的应用程序并扩展其功能。
现在已经有专门的.net团队来实现客户所需要的功能
不想经常更新程序
.net core 更适用于以下几个方面:
程序需要多系统运行,包括MAC,windows和Linux等系统
不怕学习新东西,不怕出现的各种疑难杂症,毕竟.net core 刚出生没多久,肯定很多东西考虑的不是特别全面
热爱开源,最好是刚接触.net 的
说了这么多画个图表给大家看看吧
Docker容器支持 | 都支持,.net Core就是以Docker为基础的 |
在命令行上重复回复 | .net Core更快 |
跨平台 | 仅.net Core支持 |
Windows client applications using Windows Forms and WPF | .net framwork |
已经有一个预配置的环境和系统 | .net framwork |
系统稳定性 | .net framwork 更胜一筹,毕竟.net core才刚发布 |
是否有一个成熟的团队 | .net core 需要一个学习曲线 |
未来咋样 | .net core 就是未来 |
注意,并不是所有的.net Framework 都可以直接运行在.net core 上
参考文献
1.http://www.hanselman.com/blog/WhatNETDevelopersOughtToKnowToStartIn2017.aspx
2.http://www.c-sharpcorner.com/article/difference-between-net-framework-and-net-core/