1.6 Framework類庫編程
1. .NET Framework中包含了Framework類庫(Framework Class Library,FCL)。服務器
2. FCL是一組DLL程序集的統稱,其中含有數千個類型定義,每一個類型公開一些功能。
1.7 通用類型系統
1. CLR是徹底圍繞類型展開的。
2. 類型爲應用程序和其餘類型公開了功能。經過類型,用一種編程語言寫的代碼能與另外一種語言寫的代碼溝通。
3. 因爲類型是CLR的根本,全部MicroSoft指制定了一個正式的規範,即"通用類型系統"(Common Type System,CTS),它描述了類型的定義和行爲。
4. CTS規定,一個類型能夠包含一個或者多個成員。好比:字段、方法、屬性、事件等。
5. CTS還指定了類型可視性規則以及類型成員的訪問規則。如privae、family(C#:protected)、family and assembly(C#:沒有)、assembly(C#:internal)、family or assembly(C#:protected internal)、public
6. CTS規定全部類型最終必須從預約義的System.Object類型繼承。
1.8 公共語言規範
1. MicroSoft定義了一個"公共語言規範"(Common Language Specification,CLS),它詳細定義了一個最小的功能集。任何編譯器生成的類型要想兼容於其餘"符合CLS、面向CLS的語言"所生成的組件,就必須支持這個最小的功能集。
2. CLS定義了全部語言必須支持的一個最小的功能集。
1.9 與非託管代碼的互操做性
1.CLR提供了一些機制,容許在應用程序中同時包含託管代碼和非託管代碼。具體說,CLR支持三種互操做情形。
1)託管代碼能調用DLL中俄非託管函數。託管代碼採起一種名爲P/Invoke(Platform Invoke)的機制來調用DLL中的包含的函數。
2)託管代碼可以使用現有的COM組件(服務器)。
3)非託管代碼可以使用託管類型(服務器)。