作者 | 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專家博客、講師,濰坊一所高校計算機教師,自由編程界老兵一枚。























