目录

.NET Framework

.NET Core

.NET Framework的优势

.NETCore 的优势

在.NET Core和.NET之间如何选择?

.NET的未来


 

当今 net 生态系统如下:

 

从上图可以看到,.NET生态系统具有三个主要的高级组件-.NET Framework,.NET Core和Xamarin。 
当您想使用C#构建移动(iOS,Android和Windows Mobile)应用程序时,Xamarin是您唯一的选择。 
 

.NET Framework

支持Windows和Web应用程序。今天,您可以使用Windows窗体,WPF和UWP在.NET Framework中构建Windows应用程序。ASP.NET MVC用于在.NET Framework中构建Web应用程序。
 

.NET Core

是新的开源和跨平台框​​架,可为所有操作系统(包括Windows,Mac和Linux)构建应用程序。.NET Core仅支持UWP和ASP.NET Core。UWP用于构建针对Windows和移动应用程序的Windows 10。ASP.NET Core用于构建基于浏览器的Web应用程序。 
 

 

.NET Framework的优势

 
如果您是需要快速构建和发布某些东西的.NET开发人员,而又没有时间学习.NET Core,那么.NET Framework是您的选择。.NET Core确实需要一段时间来学习。
 
如果要维护和升级现有的.NET应用程序,则选择.NET Framework。将现有的.NET应用程序移植到.NET Core应用程序需要一些工作。
 
找工作吗?现在 .NET Framework 要比 .NET Core 的工作岗位更多。
 
.NET Framework的当前版本4.8应该是.NET Framework的最新版本。将来将不再计划.NET Framework的新版本。
 

.NETCore 的优势

 
如果您要构建新的应用程序,并且可以在.NET Core和.NET Framework之间进行选择,那么.NET Core是您的最佳选择。
 
微软发布了.NET Core v 3.0,它是.NET Core的经过改进的版本。如果您想为将来学习和构建,则.NET Core是您的理想之选。
 
.NET 3.0现在支持WPF和Windows窗体。.NET Core 3.0还支持UWP,WPF和Windows窗体之间的交叉开发。这为开发人员提供了将UWP的现代界面引入Windows Forms和WPF的灵活性。
 
如果您要构建一个新的应用程序并且您的公司已经批准了该应用程序,那么.NET Core是必经之路。.NET Core将继续变得越来越好。
 
.NET Core更适合跨平台需求。Windows,Linux和macOS支持.NET Core应用程序。Windows,Linux和macOS均支持Microsoft流行的开源代码编辑器Visual Studio Code。VS Code支持代码编辑器的现代需求,包括IntelliSense和调试。大多数第三方编辑器(例如Sublime,Emacs和VI)都可以使用.NET Core。
 
.NET Core支持微服务体系结构,该体系结构允许跨平台服务与.NET Core一起使用,包括使用.NET Framework,Java,Ruby或其他开发的服务。
 
容器是当今的虚拟机。.NET Core的模块化,轻量级和灵活性使在容器中部署.NET Core应用程序变得更加容易。容器可以部署在任何平台,云,Linux和Windows上。.NET Core与Docker和Azure Kubernetes服务都可以很好地工作。
 
需要高性能和可扩展的系统。
 
在开发.NET Core时,性能和可伸缩性是两个主要的重点领域。根据某些基准,.NET Core和ASP.NET Core是性能最高的Web框架。
 
.NET Core版本可以很好地协同工作。您可以轻松地在同一台计算机上并排运行多个版本和应用程序。
 
C#的优势
 
 
C#是所有应用程序中用途最广泛的编程语言,并且每隔几个月就会发生变化。这些语言的每个次要发行版都引入了一些很酷的功能。当前版本的C#8.0和C#9.0引入了一些新功能,以使程序员的生活更轻松。 该语言旨在编写简洁,快速和现代的代码。该语言旨在提高生产效率
 
 
 
 

在.NET Core和.NET之间如何选择?

 
如果今天您必须在.NET Framework和.NET Core之间做出选择,请遵循以下条件。请记住,大约一年之后,您可能根本不想选择.NET Framework。
截至今日: 
 
如果您满足以下条件,则.NET Framework是更好的选择:
  • 没有时间学习新技术
  • 需要一个稳定的工作环境。目前国内的企业主要还是.NET Framework,因而工作岗位更多
  • 发布日程临近。
  • 已经在开发现有的应用程序并扩展其功能。
  • 已经拥有一支拥有.NET专业知识并构建可用于生产环境的软件团队。
  • 不想处理持续的升级和更改。
  • 使用Windows窗体或WPF构建Windows客户端应用程序
如果您满足以下条件,则.NET Core是更好的选择:
  • 想要在Windows,Linux和Mac操作系统上发布使用您的应用程序
  • 不怕学习新事物。
  • 由于.NET Core尚未完全成熟,因此不必担心中断和修复问题。
  • 正在学习.NET的学生。
  • 热爱开源。

 

下表可以帮助您做出决定。
 
 无需UI高性能可扩展的系统.NET Core更快。
Docker容器支持 两者都有,但是.NET Core诞生于容器中。
严重依赖命令行.NET Core具有更好的支持。
跨平台需求.NET核心
使用微服务两者都可以,但是.NET Core旨在满足当今的需求。
以用户界面为中心的Web应用程序在.NET Core赶上之前,.NET Framework现在会更好。
使用Windows窗体和WPF的Windows客户端应用程序
.NET Framework
已经具有预先配置的环境和系统.NET Framework更好。
稳定的版本,可立即构建和部署.NET Framework从2001年开始出现。.NETCore只是一个婴儿。
拥有经验丰富的.NET团队.NET Core需要一段时间来学习。
时间不是问题。实验是可以接受的。无需急于部署。.NET Core是.NET的未来。
 

.NET的未来

 
.NET 5在2020年推出。.NET5将取代.NET Core,并且是.NET Framework和.NET Core的未来。.NET 5将不支持ASP.NET Web窗体,WCF或WWF。UWP在将来也不会发挥主要作用。
 
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐