還在用NuGet嗎?大哥FuGet了解一下


前言

你可能不知道是,NuGet已經發布10年了,從 Visual Studio 2010 第一次官方集成NuGet以來,這10年間有聚集了超過 14萬 的包,這些包有超過 150萬 的版本提供,大約有 155億 的總下載量。

image

以上可見,NuGet對於我們日常開發的重要性,我們已經離不開它了。每個人都知道 NuGet,但是有人知道它的大哥 FuGet 嗎? 你沒看錯,不是 MyGet 是 FuGet。

FuGet

FuGet 是什么呢?

你可以把 FuGet 看是一個 NuGet 的 Pro 版本,它由大神Frank A. Krueger創建。在 nuget.org 中我們只能對包進行一些簡單的瀏覽操作,而 FuGet 提供了一種不同的視圖(Web UI)去查看這些包並且你可以很方便的進行一些更加深度的查看。

同樣,FuGet 也是包瀏覽器,但是它不僅僅可以查看包的元素而且可以查看包內部的元數據,使用這種方式你可以對你要了解的包進行更加深度的探索和學習,這個一個非常舒服的過程。

舉個例子,你可以在這個地址 https://www.fuget.org/packages/DotNetCore.CAP 來查看 CAP 提供的包信息。

img

通過上面的圖,我們可以看到 DotNetCore.CAP 這個包使用的框架是基於 netstandard2.0 的。還可以看到依賴的其他NuGet包都有哪些。

我們還可以通過顏色來取分框架的兼容程度。

image

它們是彩色編碼的,所以你可以一眼看出來:

  • 綠色的是.NET標准版,表示可以在任何地方使用
  • 深藍色庫是特定於平台的
  • 淺藍色庫僅適用於完整的 .NET 和 Mono
  • 黃色是舊的PCL庫,少用

在左邊,可以看到程序集提供的命名空間,以及該命名空間下的類型,不同訪問級別的類型使用不同的標注。

img

可以看到,不但能看到內部的類型信息,而且還能夠看到代碼,簡直不能太方便。

除此之外,FuGet 還提供了一個對比不同包版本的變化的功能,以便於我們在升級包的時候,看是否有一些破壞性的更新,以及兼容性等問題。

例如,我們對比 CAP 2.4 和 2.3 版本改變了什么 API

可以看到,在 CapOptions 以及 MessageDto 種多了 Version 字段,這也正式我們在 CAP 2.4 版本中提供的新的特性隔離功能。

總結

通過以上介紹,我們可以看到 FuGet 功能還是非常強大的,是時候把它添加到你的書簽里面了。另外 FuGet Web UI 的代碼是完全開源的,你可以在這里 https://github.com/praeclarum/FuGetGallery 來查看相關源碼,歡迎支持。

如果你覺得本篇文章對您有幫助的話,感謝您的【推薦】。

如果你對 .NET Core 有興趣的話可以關注我,我會定期的在博客分享我的學習心得。


本文地址:http://www.cnblogs.com/savorboard/p/fuget.html
作者博客:Savorboard
本文原創授權為:署名 - 非商業性使用 - 禁止演繹,協議普通文本 | 協議法律文本


免責聲明!

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



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