• 设计模式


    策略模式
    只使用继承耦合性太强,只使用接口在实现类有重复代码。使用策略模式,可以定义多个算法族,一个算法族有一个接口,多个实现类,复用这些实现类。
    状态模式
    一个系统有一个初始状态,并在不同的时机改变状态。定义一个状态类型的接口,定义一些实现类,实现接口方法。
    单例模式
    饿汉模式,私有化构造方法,直接给成员变量赋值,成员变量设置为静态的。
    懒汉模式,私有化构造方法,提供一个方法生成单例对象,判断如果等于null就创建一个对象。
    懒汉模式多线程情况偶尔会出现问题,解决办法。1、饿汉模式;2、同步方法;3、同步代码块,两层null校验,成员变量设置为volatile
    适配器模式
    A类和B类方法逻辑类似,但接口不同,方法名不同,A和B无法对接。新建C类,实现A的接口,组合B,方法体里调用B的方法。
    外观模式
    一个操作需要不同组件按顺序执行执行,过程复杂。这时,新建一个类,在这个类里组合不同组件,并新建一个方法,封装方法调用,对外提供单一接口。
    模板方法模式
    在抽象类里定义一个模板方法,模板方法体调用其它方法,有的方法自己实现,实现标准化过程;有的方法是抽象方法,等继承者实现,实现产品个性化。
    命令模式
    遥控器里有一个小程序,有一个类包含一个接口类型的数组,并且为每个数组元素赋值为一个个不同的实现类,不同的实现类封装各自的方法调用。
    装饰者模式
    装饰者实现被装饰都实现的接口,可以拿来当做被装饰者使用;装饰者内部组合被装饰者,在调用被装饰者的方法前后,可以执行一些其他的操作。
    工厂模式
    简单工厂,封装对象创建。其思想和springIOC相同。
    抽象工厂,一个工厂接口,多个工厂实现类生产不同的产品。
    工厂方法,类似模板方法模式。模板方法强调模板方法,强调标准。工厂方法,强调工厂方法,强调个性化。
    迭代器模式
    对容器集合采用最合适的方式迭代。
    观察者模式
    发布订阅模式,订阅者组合发布者,调用发布者的方法注册或注销。发布者有一个订阅者容器,在适当时机调用订阅者的方法以通知它。
    代理模式
    组合实现;继承实现。
    组合模式
    忽略类型差别,组织元素为多层的树状结构,一层中的一个元素既可能是叶子元素,也可以是组合元素,叶子元素和组合元素方法不同。虽然错误可能提高,但有时会简化问题。

    设计原则:松耦合、依赖倒置原则、开放关闭原则、单一责任

  • 相关阅读:
    python之模块和包
    python之常用模块一
    关于jQuery库的引用
    Python数据挖掘-相关性-相关分析
    Python数据挖掘-使用sklearn包
    Python数据挖掘-关键字提取
    Python数据挖掘-词云美化
    Python数据挖掘-词云
    Python数据挖掘-词频统计-实现
    Python数据挖掘-中文分词
  • 原文地址:https://www.cnblogs.com/Mike_Chang/p/12608057.html
Copyright © 2020-2023  润新知