C#与.NET3.0高级程序设计 .NET平台构造块简介

笔记选自《C#与.NET3.0高级程序设计》一书,补基础。

Tag:CLR、CTS、CLS、BCL

.NET可以理解为一个新的运行库环境和一个全面的基类库。

.NET平台的三个构造块:CLR CTS CLS

 

CLR:

运行底层的正式名称是CLR(Commom Language Runtime公共语言运行库),主要作用是为我们定位、加载和管理.NET类型,负责大量底层细节工作(内存管理GC、安全检查等)

 

  • CTS:
    CTS(Common Type System公共类型系统)规范完整地描述了运行库所支持的所有可能的数据类型和编程结构,指定了这些实体间如何交互,也规定了它们在.NET元数据格式中的表示
    MSDN上面的解释是:http://msdn.microsoft.com/en-us/library/zcx1eb1e(v=VS.100).aspx
    CTS定义了类型在CLR中的声明、使用和管理,也是运行时跨语言集成支持重要的一部分,CTS的表现机制:
    1、建立一个框架使跨语言集成、类型安全和高性能执行成为可能
    2、提供一个面向对象模型
    3、定义了语言必须遵守的规则,保证不同语言的对象可以交互
    4、提供一个包含原始数据类型的库
    CTS支持下面5中类型:
    Class、Structures、Enumerations、Interfaces、Delegates

 

CLS(Common Language Specification公共语言规范):
一种特定的支持.NET的语言可能不支持CTS所定义的所有特性。CLS是一个相关的规范,定义了一个让所有.NET语言都支持的公共类型和编程结构的子集。
如果构造的.NET类型仅暴露与CLS兼容的特性,那么可以肯定其他所有支持.NET的语言都能使用它们。

 

BCL(Base Class Libraries基类库):
出了CLR、CTS\CLS规范之外,.NET平台提供了一个适用于全部.NET语言的基类库(BCL)。
这个类库不仅封装了各种基本类型,还支持在实际应用中用到的一些服务。
CLR、CTS、CLS和基类库之间的关系:
clip_image001

posted @ 2011-07-13 09:29  L Cooper  阅读(444)  评论(0编辑  收藏  举报