- .Net(dot net) 是一个现代的托管计算机软件开发技术。
- .NET Framework 是.Net开发技术规范的一个具体实现。
- 公共语言基础结构(Common Language Infrastructure 简称CLI) CLI 是.Net技术的标准,由Microsoft、Hewlett-Packard、Intel和其他公司于2000年8月标准化,到 2001 年 12 月,它获得了Ecma的批准,随后于 2003 年 4 月通过了ISO标准化。NET Framework是 Microsoft 最初的 CLI 商业实现。主要由以下四部分组成:
- 通用类型系统(Common Type System 简称CTS)
所有符合 CTS 的编程语言共享的一组数据类型和操作。 - 通用语言规范(Common Language Specification 简称CLS)
CLI 应符合任何语言所针对的基本规则集,因为该语言应与其他符合 CLS 的语言互操作。CLS 规则是通用类型系统的一个子集。 - 元数据有关程序结构的信息与语言无关,因此可以在语言和工具之间引用,从而可以轻松地使用以开发人员未使用的语言编写的代码。
- 虚拟执行系统(Virtual Execution System 简称VES) VES 加载并执行与 CLI 兼容的程序,使用元数据在运行时组合单独生成的代码片段。
- 通用类型系统(Common Type System 简称CTS)
- 公共语言运行时(Common Language Runtime 简称CLR) 微软对 VES(虚拟执行系统)的实现
- 框架类库(Framework Class Library 简称FCL) FCL 是微软实现了 CLI 基础标准库
- 框架中最基础的部分(Base Clas Library 简称BCL) BCL 是 C# 运行时库的标准,也是公共语言基础结构 (CLI) 标准库之一。BCL 提供了表示内置 CLI 数据类型、基本文件访问、集合、自定义属性、格式设置、安全属性、I/O 流、字符串操作等的类型。
- 中间语言( Common Intermediate Language 简称CIL) 也称为 Microsoft Intermediate Language (MSIL) or Intermediate Language (IL) 是一种基于通用语言基础设施规范文档的低级语言,其中编译的源代码是用高级语言编写的。它的操作基于堆栈,由虚拟机执行。C#、VB等语言编写的程序都会通过对应的编译器编译成CIL程序。
注:以上这些概念都是个人理解,如理解有误,欢迎讨论
参考:
https://en.wikipedia.org/wiki/Common_Intermediate_Language
https://en.wikipedia.org/wiki/Common_Language_Runtime
https://en.wikipedia.org/wiki/.NET_Framework
https://en.wikipedia.org/wiki/Common_Language_Infrastructure
https://en.wikipedia.org/wiki/.NET
https://stackoverflow.com/questions/480752/clr-and-cli-what-is-the-difference



