1.2 将托管模块合并成程序集
概念
程序集(assembly):首先程序集是一个或多个模块/资源文件的逻辑性分组;其次,程序集是重用、安全性以及版本控制的最小单元。取决于你选择的编译器或者工具,既可生成单文件程序集,也可生成多文件程序集。在CLR的世界中,程序集相当于“组件”。(第2章会深入探讨)
清单(manifest):PE32(+)文件中包含的一个数据块,清单也是元数据表的集合,这些表描述了构成程序集的文件、程序集的文件所实现的公开导出的类型以及与程序集关联的资源或数据文件。
自描述(self-describing):
CLR实际不和模块工作,它和程序集工作。取决于你选择的编译器或者工具,既可生成单文件程序集,也可生成多文件程序集。在CLR的世界中,程序集相当于“组件”。(第2章会深入探讨)
图 1-2有助于你理解程序集
图中一些托管模块和资源(或数据)文件准备交由一个工具处理。工具生成代表文件逻辑分组的一个PE31(+)文件。实际发生的事情是,这个PE32(+)文件包含一个名为清单的数据块。清单也是元数据表的集合。这些表描述了构成程序集的文件、程序集的文件所实现的公开导出的类型以及与程序集关联的资源或数据文件。