VOOZH about

URL: https://read01.com/zh-hk/m8Kzo6.html

⇱ .Net框架和.Net Core,程式設計師該如何選? - 壹讀


Saturday, Apr 11, 2026

.Net框架和.Net Core,程式設計師該如何選?

2017/03/21 來源:IT168

【IT168 評論】.Net戰略是微軟在Forum 2000活動上發佈的,距今已經17年了。雖然在伺服器和應用程式上出現了一些名稱混亂,但底層開發工具還是成為了微軟與全球企業合作的核心。.Net也超越了Windows生態系統,將微軟的工具和技術帶到了iOS,Android和Linux中。但是這種發展帶來了一系列新問題:應該使用哪種.Net?——.NET框架,.Net標準,Xamarin的Mono(以及緊密相關的Unity 3D遊戲工具)或.Net Core?

👁 Image
...

以前.Net開發人員只需要選定運行時和.Net框架即可。但現在,它是Windows生態系統從物聯網到雲最寬泛的一部分。開發人員有更多選擇,這在Microsoft的Visual Studio 2017的新安裝程序中顯而易見。當涉及到編寫C#,F#或Visual Basic,有廣泛的.Net變體和平台可以選擇。這不是一件壞事,.Net跨平台運行時本來就是微軟的最初目標之一,雖然當時未能如願,因為微軟沒有擊敗Flash。

有趣的是,Visual Studio安裝程序對新家庭成員.Net Core十分重視。當選擇構建ASP.Net Web應用程式或想使用容器跨平台應用程式時,.Net Core是將熟悉的Windows開發工具應用到更廣泛的Microsoft生態系統,特別是下一代企業應用程序的構建。

.Net Core不是特別好理解,也許最好考慮對.Net進行徹底重構以支持跨平台開發,.Net Core已經迅速成為.Net基金會開源工作的核心。.Net Core可以比其他.Net運行時和庫更快地響應對新平台的需求。例如,三星正在將其添加到Tizen作業系統,最近的.Net Core版本支持在Raspberry Pi上運行代碼。它也是使用.Net語言構建通用Windows平台(UWP)應用程式的基礎。

雖然.Net Core具有許多其他.Net平台的部分功能,但它專注於提供基於控制台的伺服器應用程式。 它在Windows,MacOS和Linux上提供構建和運行命令行應用程式的工具,它也是用於構建ASP.Net Core Web應用程式的工具。在Windows Server Nano上運行.Net Core,使用熟悉的工具在Windows容器中構建和運行微服務。

因為.Net Core缺少一些常用的.Net功能,所以開發人員可能不會使用它來運行現有的工作負載。它更多是用於構建旨在作為雲工作負載的一部分運行的新應用程式的工具,或者作為企業級微服務重構的一部分。最近的更新增加了對UWP和Xamarin Forms的支持,因此開發人員可以在小型設備上構建GUI應用程式。 這種方法將形成Tizen的.Net支持的基礎,在移動Linux設備上使用.Net Core,具有用於UI的Xamarin Forms。

因為.Net Core是輕量級和快速的,它相對於複雜的.Net框架具有顯著優勢。但是,因為它不支持許多熟悉的庫和擴展,與現有的.Net開發相比有一個學習曲線。但這並不意味著必須從頭開始學習.Net來使用.Net Core,你可以將現有的C#和F#語言技能帶到.Net Core開發中。

.Net標準是什麼?

令人困惑的是,.Net標準不僅涵蓋庫,而且是.Net開發中用於構建目標的名稱(實際上是「netstandard」),用於快速定義代碼中所需的庫,並由 IDE和編譯器自動處理。

作為.Net開發的一部分,Microsoft通過ECMA(負責JavaScript標準的小組)對運行時API進行了標準化。 該標準化使得相同的代碼可以針對不同的.Net運行時,.Net標準庫指定了幾乎所有.Net實現,從Windows Phone的Silverlight到運行在Azure的無伺服器PaaS上的應用程式,從Android和iOS Xamarin代碼到HoloLens上UWP的API。但是ECMA標準還是不夠廣,無法標準化構建更複雜應用程式所需的基類庫。

由於不同的.Net運行時支持不同級別的.Net標準API,因此代碼不像你想要的那麼便攜。如果要構建需要在不同版本的.Net上運行的代碼,則必須定位標準庫的最低通用版本。因為庫是通過NuGet提供的,這不是問題。

Microsoft重構.Net還是有意義的。一旦你克服了.Net標準(庫)和netstandard(目標)之間的混亂,決策會變得相當簡單。讓我們回到最初的問題,關於.Net,開發人員該如何選擇?

·如果你正在使用大量的工作流和數據連接工具.Net生態系統的大型應用程式,請堅持使用.Net Framework。

·如果你的目標是雲和移動端,並且考慮跨平台開發—— .Net Core和.Net標準庫的組合是最佳的。

您可能感興趣
免責聲明:本文內容來源于IT168,文章觀點不代表壹讀立場,如若侵犯到您的權益,或涉不實謠言,敬請向我們提出檢舉
最新文章 / 服務條款 / 私隱保護 / DMCA / 聯絡我們

壹讀/READ01.COM