天天看點

.NET Framework與.NET Core

  C#是微軟釋出的面向對象的,運作與.NET Framework之上的進階程式設計語言,屬于編譯型語言,也是目前.NET Framework的主角。C#語言文法簡單而優雅,同時也有着很高的開發效率,尤其是在網絡程式設計友善有着廣泛的應用。目前C#已經成為一種跨平台的語言,可以運作于Windows、Linux、Mac等其他平台上。.NET Framework包含公共語言運作時(CLR)和.NET Framework 類庫,其中包括各種功能和對許多行業标準的支援。NET Framework 提供許多服務,包括記憶體管理、類型和記憶體安全、安全性、網絡和應用程式部署。它提供易于使用的資料結構和API,将較低級别的Windows作業系統抽象化。可在.NET Framework中使用各種程式設計語言,包括C#、F#和Visual Basic。

  目前已經發展到了.NET Core,支援跨平台,開發跨平台應用需要安裝.NET Core SDK。未來.NET Framework的API基本都會遷移到.NET Core中,并會進行進一步優化與更新。

  以下是.NET Core未來的發展方向

.NET Framework與.NET Core
   以下為.NET Framework的基本結構
.NET Framework與.NET Core
  其中BCL(Base Class Library,基類庫):是.NET架構使用的一個大的類庫,而且也可以在你的程式中使用。包括以下一些類。

  • 通用基礎類:這些類提供了一組極為強大的工具,可以應用帶廣泛的程式設計任務中,比如字元串操作、安全和加密。
  • 集合類:這些類實作了清單、字典、散清單以及位數組。
  • 線程和同步類:這些類用于建立多線程程式。
  • XML類,這些類用于建立、讀取以及操作XML文檔。

  CLR即公共語言運作庫(Common Language Runtime),和Java虛拟機一樣也是一個運作時環境。C#編譯之後是在CLR環境中運作的。公共語言運作時的功能通過編譯器和工具公開,你可以編寫利用此托管執行環境的代碼。 使用基于公共語言運作時的語言編譯器開發的代碼稱為托管代碼;托管代碼具有許多優點

  • 跨語言內建
  • 跨語言異常處理
  • 增強的安全性
  • 版本控制和部署支援
  • 簡化的元件互動模型
  • 調試和分析服務等

正是CLR使.Net Framework并不是Win32 API和COM的一個抽象層,而是有了自己的"作業系統"。它主要有以下功能:

  • 基類庫支援 (Base Class Library Support)
  • 記憶體管理 (Memory Management)
  • 線程管理 (Thread Management)
  • 垃圾回收 (Garbage Collection)
  • 安全性 (Security)
  • 類型檢查 (Type Checker)
  • 異常處理 (Exception Manager)
  • 即時編譯 (JIT)

以下為CLR的工作流程。

.NET Framework與.NET Core
  • 以上為本篇文章的主要内容,希望大家多提意見,如果喜歡記得點個推薦哦

    作者:

    艾心

    出處:

    https://www.cnblogs.com/edison0621/

    本文版權歸作者和部落格園共有,歡迎轉載,轉載時保留原作者和文章位址即可。

  • 繼續閱讀