整理自資料 .net standard和.net framework什么區別?
.NET Standard Library 是 .NET Core 和 .NET Framework 共有的基礎。也就是說.NET Framework包含了.NET Standard Library中的所有目錄。
1. .NET Core是一個開源的模塊化的Framework,而且 .NET Core也可在不同的操作系統上運行,包括Windows、linux、MacOS,實現了跨平台跨設備。
2. .NET Framework 是Windows下特有的。
所以將一個.NET Standard Library項目改成 .NET Framework項目是可以的。但反過來那是有條件的,那就是不涉及到.NET Framework的特有部件。除實現NET Standard Library外, .NET Core 和 .NET Framework 都有各自特有的實現。
下面這圖可以清晰的知道.NET Standard Library和.NET Framework的關系和區別。
區別一、.NET Standard Library是底層的庫文件,一般為上層提高實現的接口,而 .NET Framework除了實現NET Standard Library外,還有自己特有的實現類和方法。
區別二、.NET Standard是一項實現BCL的規范。由於.NET實現需要遵循這項規范,所以應用程序開發人員就不用擔心每一種托管框架實現的BCL不同。
因此,.NET Framework每一種托管框架都實現了.NET Standard中的BCL。隨着計算機工業不斷推出新的硬件和操作系統,將來還會出現新的.NET托管框架。該標准讓應用程序開發人員知道,他們可以依賴於一套始終如一的API。
區別三、每個.NET版本都對應一個.NET Standard版本,而.NET Framework沒有這樣的要求。
微軟CEO薩提亞·納德拉睿智的決定拋棄以PC為中心,擁抱各種設備和平台,成為一家軟件服務型企業。為了達成這種願景必須構建新的微軟生態鏈,囊括Windows,Linux,OS X及其他操作系統,覆蓋X86/ARM等處理器以及不同的設備(包括PC,Phone,全息眼鏡及其他)。這些足見微軟的“野心”。