zoukankan      html  css  js  c++  java
  • Builder模式的理解分析

    七 分析总结

    效果:

    1 隐藏产品的内部表示

      Builder提供创建产品的接口给Director,

      隐藏了产品的内部结构(仅提供接口BuildPart()创建产品)

      隐藏该产品是如何装配的(BuildPart()内部装配是隐藏的)。

    2 将构造代码和表示代码分开

      构造代码是在Builder提供的接口中完成的,每个ConcreateBuilder包含了创建和装配一个特定产品的所有代码。

      提供不同的Builder,使用相同的Director导向过程可以得到不同的表示。

      使用的不同Client可以使用相同的Builder,得到不同相同的表示。

    在前面RTFReader阅读器的例子中:

      如果提供ASCIIText Converter 则只能得到ASCIIText,提供TexText Converter则可以得到TexText。

      如果使用XMLReader,提供ASCIIText Converter 使用Director得到不同于的ASCIIText的表示。

      所以将构造代码和表示代码分开,可以使代码得到重用。

    3 精确的控制导向产品的创建

      将代码的构建过程委托为Director去完成,那么Client可以不用关注产品的构建过程

      何时完成或者完成到什么程度,交给Director去控制产品的创建和装配的过程。并返回所创建的产品,或者通知Client。

  • 相关阅读:
    串口通信(2)
    串口通信(1)
    extern关键字的使用
    volatile关键字的使用
    Uart串口与RS232串口的区别
    DSP5509的时钟发生器(翻译总结自TI官方文档)
    DSP中的cmd文件
    pragma伪指令
    在C语言中嵌入汇编语言
    another app is currently holding the yum lock;waiting for it to exit...
  • 原文地址:https://www.cnblogs.com/fenglongyu/p/7410280.html
Copyright © 2011-2022 走看看