C#與.NET3.5進階程式設計讀書筆記(1)

來源:互聯網
上載者:User

第一章 .NET之道  

日期:20091117

1,.NET平台構造塊

.NET可以理解為一個運行庫環境和一個全面的基底類別庫。CLR,CTS,CLS 和base class library的關係如:

其中

CLR的主要作用是 為我們定位、載入和管理.NET類型,同時負責一些底層的工作,如記憶體管理,建立應用程式定義域、線程和物件內容邊界等。

CTS(Common Type System) 描述了運行庫所支援的所有可能的資料類型和編程結構,以及這些之間的互動。

CLS(Common Language Specification) 定義了一個所有.NET語言都支援的公用類型和編程結構的子集。

2,.NET 3.5新特性

  • 支援強型別的查詢(LINQ)
  • 支援匿名型別
  • 使用擴充方法擴充既有類型功能的能力
  • Lambda運算子(=>)
  • 新的對象初始化文法

3,.NET程式集(DLL或EXE檔案)包含的是平台無關的IL和類型中繼資料。不包含特定於平台的指令,而各種編程語句的原始碼通過各自的編譯器產生統一的 包含IL和類型中繼資料的.NET二進位檔案。

中繼資料是許多.NET技術的支柱,這些技術包括WCF,XML Web服務/遠端層、反射、晚期綁定和對象序列化等。

4,CLR

.NET 程式執行流程

 

5,.NET的平台無關性

當微軟發布C#語言和.NET平台時,同時發布了一整套正式的文檔來說明C#和CIL語言的文法及語義、.NET程式集格式、核心.NET命名空間及假定的.NET運行時引擎的結構(虛擬執行系統,VES)。基於這些文檔,第三方組織就可以在各種作業系統和處理器上構建不同的.NET平台發行版。

開源.NET版本的兩個派別:

  • Mono項目,一個CLI的開源版,針對各種版本Linux 以及Win32 和Mac Os X
  • Portable.NET,目的是在儘可能多的作業系統上運行(Win32\AIX\BeOS\Mac OS X\Solaris\所有主要的Linux發行版本)

Mono項目新進展,見Novell加速非Windows環境.NET應用上市步伐

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.