什么是代理、存根及类厂对它们不太理解。请大家讲讲。一般情况下,这三个东西是不是不需要啊?

解决方案 »

  1.   

    类工厂是设计模式方面的东西,代理和存根在COM,RPC等方面使用。
    下面的网址中有代理和存根(Proxy  Stub )的介绍,
    http://www.velocityreviews.com/forums/t144059-proxy-vs-stub.html
      

  2.   

    http://dev.21tx.com/2003/08/30/10109.html
      

  3.   

    c++下,创建对象必须知道对象的类别,然后才能比如new一个出来。
    而com下,你不知道组件的实际的类别,你只知道abstract class,
    也就是com接口,所以你不能创建。但是客户并不关心实际的类别,
    只关心接口,所以有必要引入一个间接的创建机制,让它来创建,
    这就是类厂,这是通用的设计模式。
      

  4.   

    如果接口定义全部使用自动化兼容类型,就可以不用生成代理存根的DLL
      

  5.   

    类厂是肯定需要的,代理存根在绝大多数场合也是需要的,但是多数情况下在编码时能忽略,因为你可以使用系统提供的标准列集接口,或者使用自动生成的自定义列集接口,或者是free线程模型(无需代理存根)。
    只要不是自由线程模型,肯定需要代理存根。