作者 | Huzaifa Khan
译者 | 朱先忠
策划 | 信远
当今世界上大量程序员都选择基于.NET框架开发应用程序。但是,作为一名合格的程序员您还应该深入了解这个框架的一些优点和缺点。
如今,.NET开发框架受到了全世界程序员的广泛欢迎,它被数百万开发人员用来创建各种类型的应用程序。其原因也非常明确,.NET提供了大量功能,可以帮助开发人员依据给定的需求来开发任何类型的软件产品。此外,该平台在过去几年中有了巨大进步,为开发人员创建跨平台应用程序提供了更多便利。这进一步提高了.NET框架的流行度,也鼓励了更多的开发人员加入这个庞大的开发生态系统。
特别是最近引入的.NET 6,进一步加强了该平台的开发基础设施。可以说,它现在比以往任何时候都更加丰富;允许开发人员为云端、物联网、桌面和移动设备创建高级应用程序。
当然,您也可以将其称为完美的统一平台,因为在这里您可以根据需求获得大量的开发支持。而您所需要做的只是精通.NET开发所需要的技术,如Xamarin、ASP.NET核心等。当然,在提供了大量丰富的特征外,.NET框架也存在一些限制。这些也正是它的缺点,需要微软立即关注。在本文中,我们将讨论.NET框架存在的典型性的优点和缺点,以帮助您更好地了解该平台。
下面,让我们先来了解一下.NET的核心模型,因为该模型能够帮助您了解其整体开发的生态系统。
.NET开发平台的核心模型
许多初学者并不知道.NET开发技术被划分为四种不同类型的层,这些层中包含的模型分别对应于:.NET框架、.NET核心、Xamarin和通用Windows平台(UWP)。它们的组合实现了提供完整的.NET开发环境,人们可以利用这些组件来创建各种应用程序。
从历史发展来看,.NET框架基本上是2002年开始引入的开发平台的第一个实现。当时,它基于三种主要的应用程序模型,即ASP.NET窗体、WPF和Windows窗体。
该平台的第二个版本是.NET核心部分。它是.NET框架的高级和重建形式,允许开发人员在Linux和MacOS上使用该平台。这样一来,增强了旧版本仅为Windows平台开发应用程序的能力——也能够为其他操作系统平台提供开发支持。
.NET的第三个实现版本是Xamarin,它为创建跨平台移动应用程序提供了非常有效的开发基础设施。第四个也是最重要的.NET层称为通用Windows平台(Universal Windows Platform,简称“UWP”)。它为开发能够在所有Windows设备上运行的应用程序提供了强大的统一基础设施。这包括PC、平板电脑、XBox、Surface Hub等不同平台。
.NET开发框架的优势
.NET开发框架的流行说明了它在开发领域的重要性。以下是使用.NET开发平台体现出来的一些核心优势。
面向对象的软件开发模型
.NET的最大优点是,它允许您使用面向对象编程(OOP)的概念编写应用程序。这是开发人员用来创建不同类型应用程序的核心软件编程模型。.NET框架在处理面向对象编程及其编码策略方面非常出色。通过将代码分解为小的模块,有助于使代码更易于理解。
借助于.NET框架,您可以使用模块化结构,从而以一种十分重要的方式定义对象的行为。此外,该框架还确保了代码的可重用性,这样一来在编写其他相似类型的函数时会节省不少宝贵的时间。
快速简单的缓存系统
缓存是一种允许将有用数据存储在特定存储器中的技术。与传统的响应时间相比,这样做的目的是为了更快速地检索数据。.NET框架提供了一个高级缓存系统,允许开发人员优化进程调用的速度。此缓存系统非常健壮且易于使用,使开发人员能够简化应用程序中不同类型的数据检索。
内置的对象缓存类还有助于开发人员根据其需求自定义缓存调用。这不仅有助于优化性能,而且有助于不同的基于客户端和服务器的.NET应用程序的可伸缩性。
广泛的库支持
.NET还支持在一个地方访问数千个库和第三方组件。随着.NET标准在2016年的引入,开发人员现在可以轻松找到基于.NET框架、.NET核心和Xamarin的大量的库。这些库可用于执行软件应用程序中所需的不同类型的功能,这包括图形渲染、代码格式化、数据库交互等。
.NET开发框架的缺点
尽管.NET能够提供数百种特殊的开发功能,但是在一些关键领域仍缺乏相应的支持。在接下来的内容中,让我们仅讨论这其中的部分欠缺。
许可成本
尽管.NET框架提供了大量开发应用程序的选项,但这并非没有高昂的代价。在.NET上构建软件应用程序并不便宜,因为您需要购买开发过程中所需的一些工具。在这方面,Visual Studio所需的许可成本无疑是一个很好的例子。它的企业版提供了一些额外的开发功能,这就是为什么它在市场上以昂贵的价格提供的原因。因此,如果您的项目开发预算很小,那么您肯定很难访问顶级的.NET开发工具。
向.NET核心的挑战性过渡
尽管.NET核心是微软为提升平台的特征而推出的一款优秀产品,但它在从旧框架过渡时也带来了一些困难。我们也在其他平台上看到了差不多同样类型的问题,我们确实理解这需要一些时间才能得到妥善解决。也就是说,那些构建在.NET框架上的业务应用程序需要一个艰苦的过程来完成向.NET核心的转换。这当然需要一些时间,也需要开发人员的专业技能才能顺利地过渡到新环境中。
供应商锁定
.NET框架是由微软公司开发的,这就是为什么它拥有该平台上的所有权限。这意味着,使用.NET创建应用程序的开发人员对框架策略的控制较少。如果微软在平台上推出任何变更或更新,那么用户将不得不承担其对其软件产品的影响。这一事实经常受到开发人员的批评,因为他们希望完全由他们自己来控制自己的应用程序。
总结
在本文中,我们讨论了.NET框架的不同类型的优缺点。但是,该框架至少在目前,无疑依旧是开发软件应用程序的最佳平台之一。从网站到移动应用程序,该框架现在已经非常先进,可以开发各种软件产品。然而,它也有一些限制,这些限制希望微软能够尽快拿出解决方案。在本文中也列举了不少这方面的问题,以便您能够更好地理解它们。
原文链接:https://dzone.com/articles/understanding-the-good-and-the-bad-of-net-developm
译者介绍
朱先忠,51CTO社区编辑,51CTO专家博客、讲师,潍坊一所高校计算机教师,自由编程界老兵一枚。