你竟然沒用 Nuget 構建項目?


想寫這篇文章緣起於公眾號文章里的一條留言:

image

對於一個現代化的開發平台,建立一種讓開發者創建,分享與使用可復用代碼的機制是十分必要的。這種“可復用代碼”被打包后的文件通常被稱作“包”(package),對於.NET(包括 .NET Core)平台來說這個機制的實現就是NuGet平台。NuGet包的本質是一個以nupkg為后綴的zip壓縮文件(你可以將后綴改為.zip后解壓查看里面的內容),其中包含了編譯后的Dll文件以及其他相關文件。

.NET Core是一個開源的模塊化的Framework,不管是開發web或移動設備都在同一個Framework(.NET Core)下運行,而且 .NET Core也可在不同的操作系統上運行,包括Windows、linux、MacOS,實現了跨平台跨設備。更棒的是.NET Core 在發布程序時不用事先安裝Framework而是通過Nuget下載,這樣在初次部署時就不用安裝一個復雜而龐大Framework,而是按需下載。這種基於Nuget的按需加載鑄就了.NET Core 跨平台。.Net Core 強化了 Nuget 的使用,所有的 .Net Core 組件均有 Nuget 管理,所以有必要探討一下 Nuget。

微軟的官方文檔《包、元包和框架 https://docs.microsoft.com/zh-cn/dotnet/core/packages》明確了.NET Core 是一種由 NuGet 包組成的平台。

image

NuGet是個開源項目,項目包括 NuGet VS插件/NuGet Explorer/NuGetServer/NuGet命令行等項目,.NET Core項目完全使用Nuget 管理組件之間的依賴關系,Nuget已經成為.NET 生態系統中不可或缺的一個組件,從項目角度,將項目中各種組件的引用統統交給NuGet,添加組件/刪除組件/以及更新組件即可一鍵完成,大大提升工作效率,減少不必要的引用報錯。從運維角度,可在不影響老版本的情況下發布新版本,可統一管理公司各個項目中組件版本不一和各個版本組件的使用情況,減少故障發生以並使得項目穩定運行。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM