本文為翻譯文章,原文:Packages, Metapackages and Frameworks
.NET Core是一個(gè)由NuGet包組成的平臺(tái)。一些產(chǎn)品受益于細(xì)粒度包的定義,也有一些受益于粗粒度包的定義。為了適應(yīng)這種二重性,.NET Core平臺(tái)被分為一組細(xì)粒度的包(package)以及一些被稱為元包(metapackage)的較粗粒度的包。
每一個(gè).NET Core包支持多個(gè).NET運(yùn)行時(shí),它們代表著不同的框架。這些框架既包括傳統(tǒng)的.NET Framework(如net4.6),也包含基于包的新框架,這些新框架建立了定義框架的新模型。這些基于包的框架完全由包定義而成,包與框架之間形成較強(qiáng)的關(guān)聯(lián)關(guān)系。
包
.NET Core由一組包構(gòu)成,這些包提供了基元類型、高級(jí)數(shù)據(jù)類型、應(yīng)用程序組成類型和一些常見(jiàn)的實(shí)用工具。每一個(gè)包表示一個(gè)和包同名的程序集,如, System.Runtime包中含有System.Runtime.dll程序集。
定義細(xì)粒度的包有如下好處:
細(xì)粒度的包在開(kāi)發(fā)、測(cè)試過(guò)程中與其它包的關(guān)聯(lián)有限
細(xì)粒度的包可以提供對(duì)不同操作系統(tǒng)和CPU的支持
細(xì)粒度的包可以只依賴某個(gè)特定的庫(kù)
在發(fā)布應(yīng)用時(shí),未被引用的包不會(huì)成為應(yīng)用的一部分,因此應(yīng)用程序會(huì)有更小的體積
有些細(xì)粒度包的優(yōu)點(diǎn)只會(huì)在特定場(chǎng)景中表現(xiàn)出來(lái)。如,通常.NET Core 的所有包會(huì)在同一計(jì)劃內(nèi)提供對(duì)同一平臺(tái)的支持。這種情況下,補(bǔ)丁會(huì)以小的單個(gè)更新包的形式發(fā)布和安裝。由于這種小范圍的變化,驗(yàn)證補(bǔ)丁是否可用所花費(fèi)的時(shí)間,可以限制到對(duì)單個(gè)庫(kù)的需求中。
下面列出了.NET Core平臺(tái)上的一些關(guān)鍵NuGet包:
System.Runtime - 這是最基本的.NET Core包,包括
延伸閱讀
- ssh框架 2016-09-30
- 阿里移動(dòng)安全 [無(wú)線安全]玩轉(zhuǎn)無(wú)線電——不安全的藍(lán)牙鎖 2017-07-26
- 消息隊(duì)列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標(biāo)分割】 2017-07-26
- 詞向量-LRWE模型-更好地識(shí)別反義詞同義詞 2017-07-26
- 從棧不平衡問(wèn)題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實(shí)現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解 2017-07-26
- 阿里移動(dòng)安全 Android端惡意鎖屏勒索應(yīng)用分析 2017-07-26
- 集合結(jié)合數(shù)據(jù)結(jié)構(gòu)來(lái)看看(二) 2017-07-26