.Net框架中的CLR,CTS,ClS的解释

CLR的全称(Common Language Runtime) 公共语言运行时编程

  能够把它理解为包含运行.Net程序的引擎 和 一堆符合公用语言基础(CLI)的类库的集合,他是一个规范的实现,咱们开发的大多数.Net程序都是基于公用语言基础(CLI)的类库实现,并运行在CLR运行的引擎上。一般所说的.Net框架 就是CLR框架

 

CLS的全称(Common Language Specification) 公用语言规范编程语言

  CLS是CTS的一个子集,定义了但愿编写可以在.net平台上运行的程序的语言所需符合的最小规范。正是由于.net容许由不一样语言编写的程序一块儿执行,因此有了CLS来避免不一样语言特性带来的错误。它是CLI的一部份内容,目的是保证各类语言与.NET Framework的兼容性spa

   

CTS的全称(Common Type System) 通用类型系统.net

  Microsoft提交的CLI规范中,包括了CTS CIL(公用中间语言)底部文件格式 元数据格式等。CTS定义了一个可以在CLR上运行的语言规范。blog

 

CLI的全称(Common Language Infrastructure)公用语言基础ip

  是Microsoft想ECMA提交的一份语言和数据格式规范。CLR是目前为止 惟一一个CLI实现版本ci

 

   CLR是.NET Framework的核心,而CTS和CLS是CLR的核心。任何编程语言,若是想要在.NET CLR上执行,就必需提供一个编译器,将此语言的程序编译成.NET CLR所认识的metadata以及IL,符合CTS的规定。并不是全部的语言都能和C#同样符合CTS的规范,毕竟许多语言出如今先,CTS出如今后,因此有一些旧的语言未能符合CTS的规定。开发

 

 

CLR是CLI的实现,包含了.NET运行引擎和符合CLI的类库编译器

 

CTS包含在CLI规范中,定义了一个能够在CLR上运行的类型规范

 

CLS是CTS的子集,定义了全部面向.NET的程序所需符合的最小规范集。

 

tips:

 

   FCL  Framework Class Library (基类库)

 

   BCL  Base Class Library  (框架类库)

相关文章
相关标签/搜索