zoukankan      html  css  js  c++  java
  • 【设计模式】发送生成的组合模式

    OO基金会

    抽象

    封装

    多态

    继承


    OO原则

    封装变化

    多用组合,少用继承

    针对接口编程。不针对实现编程

    为交互对象的松耦合设计而努力

    类应该对扩展开放,对改动关闭

    依赖抽象,不要依赖详细类

    仅仅和朋友交谈

    别找我,我会找你

    类应该仅仅有一个改变的理由


    OO模式

    迭代器模式——提供一种方法顺序訪问一个聚合对象中的各个元素,而又不暴露其内部的表示。

    组合模式——同意你将对象组成树形结构来表现总体/部分的层次结构。

    组合能让客户以一致的方式处理个别对象和对象组合。


    1. 迭代器同意訪问聚合的元素,而不须要暴露它的内部结构。

    2. 迭代器将遍历聚合的工作封装进一个对象中。

    3. 当使用迭代器的时候。我们依赖聚合提供遍历。

    4. 迭代器提供了一个通用的接口。让我们遍历聚合的项,当我们编码使用聚合的项时,就能够使用多态机制。

    5. 我们应该努力让一个类仅仅分配一个责任。

    6. 组合模式提供一个结构,可同一时候包容个别对象和组合对象。

    7. 组合模式同意客户对个别对象以及组合对象一视同仁。

    8. 组合结构内的随意对象称为组件,组件能够是组合,也能够是叶节点。

    9. 在实现组合模式时,有很多设妥协就计。

    你需要以透明度和安全性的平衡。

    版权声明:本文博客原创文章。博客,未经同意,不得转载。

  • 相关阅读:
    Java可重入锁ReentrantLock
    Java异步编程
    机器学习 pipeline
    Python 机器学习 唐宇迪泰坦尼克号【最新代码】
    引用sklearn报错ImportError: cannot import name 'cross_validation'
    python机器学习-模型优化(六)
    python机器学习-模型评估(五)
    python机器学习-建模(四)
    python机器学习-特征工程(三)
    Python机器学习-数据预处理(二)
  • 原文地址:https://www.cnblogs.com/gcczhongduan/p/4752006.html
Copyright © 2011-2022 走看看