.NET和c#: .NET是一個框架,一般稱.net Framework。 c#是一個.NET框架下的編程語言。 縮寫: 程式集: CIL(Common Intermediate Language,公共中間語言):程式集里的執行代碼。其他術語:IL(Intermediate Language)和MS ...
.NET和c#:
.NET是一個框架,一般稱.net Framework。
c#是一個.NET框架下的編程語言。
縮寫:
程式集:
CIL(Common Intermediate Language,公共中間語言):程式集里的執行代碼。其他術語:IL(Intermediate Language)和MSIL(Mircosoft Intermediate Language)。
註:程式集中包含CIL、類型信息、安全信息。
公用語言運行庫:
CLR(Common Language Runtime,公用語言運行庫):是.NET的執行環境。包括:記憶體管理、異常處理、垃圾收集、反射服務、JIT編譯器、類載入器、安全服務。
GC(Garbage Collector,垃圾收集器):是CLR中的一個服務,它能自動管理記憶體。
a. GC自動從記憶體中刪除程式不再訪問的對象。
b.釋放記憶體和檢查記憶體泄漏。
JIT(Just-in-Time,即時編譯器):把程式集中的可執行代碼編譯成本機代碼。
BCL(Base Class Library,基類庫):是.NET框架提供的一個基礎庫類。
公共語言基礎結構:
CLI(Common Language Infrastructure,公共語言基礎結構):是一組闡述了系統的架構,規則和約定的規範。
CTS(Common Type System,公共類型系統):定義了那些在托管代碼中一定會使用的類型的特征。
註:所有類型都繼承自公共的基類-object
CLS(Common Language Specification,公共語言規範):詳細說明瞭一個.NET相容編程語言的規則,屬性和行為。
其他:
GAC(Global Assembly Cache,全局程式集緩存):作用是可以存放一些有很多程式都要用到的公共Assembly。
托管代碼(managed code):為.NET框架編寫的代碼稱為托管代碼。
非托管代碼:unsafe,不在CLR控制之下運行的代碼。
.NET框架組成:
編程工具,CLR,BCL
程式編譯和運行期過程:
編譯:源文件-->編譯器-->程式集
運行:程式集-->CLR(JIT編譯器)-->本機代碼-->操作系統服務。
註:程式集中的可執行代碼只有在被調用時才會編譯成本機代碼,而且只被編譯一次。