[CLR via C#]1.2 将托管模块合并成程序集
2014-01-17 14:50
267 查看
1.CLR是不和托管模块一起工作的,CLR是和程序集一起工作的。
2. 程序集是一个或多个托管模块/资源文件的逻辑性分组。
3. 程序集是重用、安全性以及版本控制的最小单位。
4. 程序集取决于你对编译器的选择,可以生产单文件程序集,也可以生产多文件程序集。在CLR中,程序集相当于一个"组件"。
5.将托管模块合并成程序集图示:
生成的 程序集会包含一个名为"清单"(maniest)的数据块。清单是有元数据构成的另一种集合。这些表描述了构成程序集的文件。
6. 默认情况下,编译器实际会把生成的托管模型转化成程序集。C#编译器会生成含有清单的一个托管模块。清单指出程序集只有一个文件构成。所以,假如项目只有一个托管模块,没有资源/数据等文件,那么程序集就是托管模块,生成过程不需要额外操作。如果是将一系列文件合并到一个程序集中,就必须掌握更多的工具(比如程序集链接器AL.exe)以及它们的命令行。
7. 在程序集模块中,还包含与引用的程序集有关的信息(包括他们的版本号)。这些信息使得程序集能够自描述(self-describing)。也就是说,CLR能判断出为了执行程序集中的代码,该程序集的直接依赖对象是什么。所以部署起来十分的方便。
2. 程序集是一个或多个托管模块/资源文件的逻辑性分组。
3. 程序集是重用、安全性以及版本控制的最小单位。
4. 程序集取决于你对编译器的选择,可以生产单文件程序集,也可以生产多文件程序集。在CLR中,程序集相当于一个"组件"。
5.将托管模块合并成程序集图示:
生成的 程序集会包含一个名为"清单"(maniest)的数据块。清单是有元数据构成的另一种集合。这些表描述了构成程序集的文件。
6. 默认情况下,编译器实际会把生成的托管模型转化成程序集。C#编译器会生成含有清单的一个托管模块。清单指出程序集只有一个文件构成。所以,假如项目只有一个托管模块,没有资源/数据等文件,那么程序集就是托管模块,生成过程不需要额外操作。如果是将一系列文件合并到一个程序集中,就必须掌握更多的工具(比如程序集链接器AL.exe)以及它们的命令行。
7. 在程序集模块中,还包含与引用的程序集有关的信息(包括他们的版本号)。这些信息使得程序集能够自描述(self-describing)。也就是说,CLR能判断出为了执行程序集中的代码,该程序集的直接依赖对象是什么。所以部署起来十分的方便。
相关文章推荐
- [CLR via C#]1.2 将托管模块合并成程序集
- CLR via C# 3 读书笔记(2):第1章 CLR执行模型 — 1.2 将托管模块组合为程序集
- CLR via C# FOURTH EDITION (二) 将托管模块合并成程序集
- CLR_via_C#.3rd 翻译[1.2将托管模块组合到集]
- 『框架设计(第2版)CLR Via C#』学习笔记(002)——将托管代码合并到程序集
- clrvia,初读CLR Via C# :CLR,托管模块,程序集,Main方法的运行过程
- CLR via C# FOURTH EDITION(一)将源代码编译成托管模块
- 《CLR Via C# 第3版》笔记之(三) - 程序集和模块
- CLR_via_C#.3rd 翻译[1.1将源文件编译为托管模块]
- CLR via C# 3 读书笔记(13):第2章 生成、打包、部署和管理应用程序与类型 — 2.4 将模块组合为程序集(下)
- 『框架设计(第2版)CLR Via C#』学习笔记(001)——将源代码编译成托管模块
- CLR via C# 3 读书笔记(12):第2章 生成、打包、部署和管理应用程序与类型 — 2.4 将模块组合为程序集(上)
- 1.2 将托管模块合并成程序集
- CLR via C# 3 读书笔记(1):第1章 CLR执行模型 — 1.1 将源代码编译为托管模块
- 【CLR的执行模型:将托管代码合并成程序集(2)】
- [CLR via C#]1.6 Framework类库~1.9与非托管代码的互操作性
- 1.2 将托管模块组合成程序集
- [CLR via C#]1.1 将源代码编译成托管代码
- CLR via C# 摘要一:托管程序的执行模型