一图搞懂CLR,CIL,CTS,CLS,FCL,BCL之间的关系
CLR: 公共语言运行库(Common Language Runtime)
CIL: 通用中间语言(Common Intermediate Language,简称CIL,亦称IL)
CTS: 通用类型系统(Common Type System)
CLS:公共语言规范 (Common Language Specification)
FCL: 框架类库(Framework Class Library)
BCL: 基础类库(Base Class Library)
补充说明:
1、语言集成是一个宏伟的目标,最棘手的问题是各种编程语言存在极大区别。要创建很容易从其他编程语言中访问的类型,只能从自己的语言中挑选其他所有语言都支持的功能。为了在这个方面提供帮助,微软定义了“公共语言规范(CLS)”,它详细定义了一个最小功能集,任何编译器只有支持这个功能集,生成的类型才能兼容由其他符合CLS、面向CLR的语言生成的组件。
2、对CLS规则进行提炼:在CLR中,类型的每个成员要么是字段(数据),要么是方法(行为)。这意味着每一种编程语言都必须能访问字段和调用方法。字段和方法以特殊或通用的方式使用。为简化编程,语言往往提供了额外的抽象,从而对这些常见的编程模式进行简化。例如语言会公开枚举,数组,属性,所引起,委托,事件,构造器,终结器,操作符重载,转换操作符等概念。编译器在源代码中遇到其中任何一样,都必须将其转换成字段和方式,使CLR和其他任何编程语言能够访问这些构造。
3、CLS只是CTS中的一个功能子集。
一图搞懂CLR,CIL,CTS,CLS,FCL,BCL之间的关系相关推荐
- 一文搞懂 x64 IA-64 AMD64 Inte64 IA-32e 架构之间的关系
想要搞清楚 x64.IA64.AMD64 指令集之间的关系,就要先了解 Intel 和 AMD 这两家公司在生产处理器上的发展历史. x86 处理器 1978年 Intel 生产了它的第一款 16bi ...
- 一张图搞懂Spring bean的完整生命周期
转载自 一张图搞懂Spring bean的完整生命周期 一张图搞懂Spring bean的生命周期,从Spring容器启动到容器销毁bean的全过程,包括下面一系列的流程,了解这些流程对我们想在其中任 ...
- java 原型图_一张图搞懂原型、原型对象、原型链
基本概念 在javascript中,函数可以有属性. 每个函数都有一个特殊的属性叫作原型(prototype) 每个对象拥有一个原型对象 [[Prototype]] / __proto__ / Obj ...
- 一文多图搞懂KITTI数据集下载及解析
转载自一文多图搞懂KITTI数据集下载及解析-阿里云开发者社区 KITTI Dataset 1.图片下载:点击下载:https://s3.eu-central-1.amazonaws.com/avg- ...
- 【科普干货】3张图搞懂Salesforce的认证体系(附新手考证攻略)
Salesforce.com,这家神一般的公司及其产品我就不多说了,需要了解的可以阅读我的另一篇科普文章<一张图读懂Salesforce的产品架构>. 今天给大家带来另一篇关于Salesf ...
- 计算机控制的工作原理图,PLC工作原理动图,一图搞懂一个原理
原标题:PLC工作原理动图,一图搞懂一个原理 PLC顺序控制 PLC正反转控制 按钮开关 冲孔加工 断电延时型时间继电器 多点控制 滚轮式行程开关 红绿灯 机械手 交流接触器 热继电器 三相闸刀 时间 ...
- 一图搞懂细粒度图像中的细粒度
一图搞懂细粒度图像中的细粒度 前言 一.细粒度图像分类是什么? 二.细粒度图像分类难点? 前言 细粒度目的是对属于同一基础类别的图像进行更加细致的子类划分.例如区分野生鸟类.汽车等.由于类别之间具有细 ...
- 4张图搞懂Salesforce的认证体系(附新手考证攻略)
Salesforce认证计划概述 最近这一两年,Salesforce的Trailhead和认证太热门了,小伙伴们前赴后继地刷Badge拿认证,可以考的认证也随着产品家族的增加而增加,从十几年前的几个认 ...
- 3张图搞懂Salesforce的认证体系
今天给大家带来另一篇关于Salesforce认证考试的科普文章. [Salesforce认证计划概述] 最近这一两年,Salesforce的Trailhead和认证太热门了,小伙伴们前赴后继地刷Bad ...
最新文章
- opencv——pcb上寻找mark点(拟合椭圆的方法)
- 高等数学·为什么f``(x)小于0:则f(x)在[a,b]上的图形是凹的。f``(x)大于0:则f(x)在[a,b]上的图形是凸的。
- LeetCode 52. N皇后 II
- 【CF526F】Pudding Monsters
- 如何使用IDEA 显示一个类的所有方法?与eclipse的outline视图类似
- 这35个Java代码优化细节,你用了吗?
- 转:PHP应用性能优化指南
- 超级强大的socket工具ss,替代netstat
- 2011 端午后,杭州支付宝
- 小米潘多拉路由器添加节点_小米mesh好用吗?AX3600AX1800 混组测试
- Spring学习(下)
- 诺顿引起的系统频繁重启的解决方法重新
- 三星s8android9,三星S8官方国行版安卓9固件rom刷机包:CHC-G9500ZCS3DSD5
- CAD二维图导入UG草图
- 房价必然上涨的N个原因
- MATLAB——斜抛运动
- linux点击桌面图标无反应,电脑点击图标没反应怎么回事
- C++控制台五子棋(带背景音乐)
- 如何将arcgis中shape要素文件转为mapgis中点线面
- Can#39;t locate Tk.pm