北京北大青鳥校區(qū)總結(jié):學(xué)習(xí)ASP.NET必須知道的術(shù)語(1-4)

北京北大青鳥校區(qū)學(xué)術(shù)部資深技術(shù)老師在授課過程中發(fā)現(xiàn),很多學(xué)員在學(xué)習(xí)ASP.NET技術(shù)的時(shí)候,依舊對一些基本的術(shù)語搞不明白。這會非常阻礙學(xué)習(xí)的進(jìn)步。于是今天,北京北大青鳥校區(qū)老師就為同學(xué)們集中講解一下ASP.NET必須知道的術(shù)語
 
1、什么是 CLS?
CLS = Common Language Specification—通用語言規(guī)范。它是預(yù)計(jì)所有 .NET 語言都支持的一個(gè) CTS 的子集。這一思想是讓使用 CLS-相容類型的任何程序和以任何語言編寫的 .NET 程序可以互相操作。理論上它能允許在不同的 .NET 語言之間有緊密的互操作性—例如允許從一個(gè) VB 類里繼承一個(gè) C# 類。

2、什么是 CTS?
CTS = Common Type System—通用類型系統(tǒng)。它是指 .NET 運(yùn)行庫所理解、并且隨后 .NET 應(yīng)用程序可以使用的一系列類型。然而,注意不是所有的 .NET 語言都將支持 CTS 中的所有類型。CTS 是 CLS 的超集。

3、什么是 CLR?
CLR = Common Language Runtime—通用語言運(yùn)行庫。CLR 是一組標(biāo)準(zhǔn)資源集合,無論編程語言是什么,所有 (理論上) .NET 程序都能從中獲益。Robert Schmidt (Microsoft) 在他的 MSDN PDC# 文章 中列出了以下 CLR 資源:
面向?qū)ο蟮木幊棠P?(繼承、多態(tài)、異常處理、垃圾收集)
安全模型
類型系統(tǒng)
所有的 .NET 基礎(chǔ)類
許多 .NET 框架類
開發(fā)、調(diào)試和測評工具
運(yùn)行和代碼管理
IL-機(jī)器語言 轉(zhuǎn)換器和優(yōu)化器
這些的含義是,在 .NET 世界里,不同的編程語言將在能力上比過去任何時(shí)候都更平等,雖然顯然不是所有語言都支持所有 CLR 服務(wù)。(北京北大青鳥校區(qū))

4、什么是映像?
所有的 .NET 編譯器都產(chǎn)生關(guān)于它們所產(chǎn)生的模塊中的類型定義的特殊數(shù)據(jù)。這些特殊數(shù)據(jù)同模塊封裝在一起 (隨后模塊被封裝到元件中),可以通過稱為映像 的機(jī)制來訪問。System.Reflection 命名空間中包含向模塊或元件詢問其類型的類。

使用映像來訪問 .NET 的特殊數(shù)據(jù)同使用 ITypeLib/ITypeInfo 來訪問 COM 中的類型庫數(shù)據(jù)非常相似,而且使用的目的也很相似—例如確定數(shù)據(jù)類型大小,以便在上下文、進(jìn)程、機(jī)器的邊界間調(diào)度它們。

北京北大青鳥校區(qū)老師介紹,映像還可以被用來動態(tài)調(diào)用方法 (參見 System.Type.InvokeMember),甚至在運(yùn)行時(shí)動態(tài)創(chuàng)建類型 。(未完)

北大青鳥網(wǎng)上報(bào)名
北大青鳥招生簡章