• [转] 程序集和Dll的区别


    首先这是一个最简单的讲法:(引用)

    什么是程序集?

    可以把程序集简单理解为你的.NET项目在编译后生成的*.exe或*.dll文件.
    嗯,这个确实简单了些,但我是这么理解的.详细:


    程序集和命名空间的区别?

    一个程序集可以跨越n个命名空间,一个命名空间也可以包含n个程序集.

    如果说命名空间是类库的逻辑组织形式,那么程序集就是类库的物理组织形式。只有同时指定类型所在的命名空间及实现该类型的程序集,才能完全限定该类型。(摘抄自《精通.NET核心技术--原来与架构》 电子工业出版社)

    也就是说,你要创建一个类的实例,必须知道该类的 命名空间(这个一般都知道)+程序集

    下面是个高深点的

    程序集的特性:
    1.程序集是自我描述的
    2.版本的相互依赖在程序集的清单里进行了记录。
    3.程序集可以并行加载。
    4.应用程序使用应用程序域来确保其独立性。

    程序集的结构:
    由描述它的元数据,描述导出的类型和方法的类型元数据,MSIL代码和资源组成。

    程序集的清单:
    1.标识
    2.属于该程序集的一个文件列表。
    3.引用程序集的列表。
    4.一组许可请求。
    5.导出的类型不是程序集清单的一部分,除非这些类型放在一个模块中。  

    下面是DLL的解释

    所谓动态链接库(Dynamic-Link Libraries,简称DLLs),简单地说就是一个可执行模块,其扩展名为.DLL,模块中包含了可以被其他应用程序或其他DLLs使用的例程和资 源。跟 一般的的可执行程序扩展名为.EXE不同的是,DLLs没有通常的主程序,但它有多个执行入口。

    DLLs的特点在于它的代码是在运行期动态地链接到调用它的程序中的,DLLs一旦加载,就能被多个应用程序或其它DLLs共享。

  • 相关阅读:
    Cesium视角
    Cesium删除特定的实体
    cesium之CLAMPED
    JavaScript:使用setAttribute()改变网页中标签的onclick属性
    atoi()函数及其实现
    寻找数组中的第二大数
    字符串函数之strcpy
    互换两个变量(不使用中间变量)
    寻找兄弟单词(2012.5.6百度实习)
    大数据量的存储分表常见算法(转)
  • 原文地址:https://www.cnblogs.com/RobotTech/p/1942883.html
Copyright © 2020-2023  润新知