设计模式一

1、设计模式

设计模式通常是针对面向对象而言的,是某类问题的通用设计解决方案,是人们解决同类型问题所总结的经验。

遵循的基本原则:将变化的对象或者方法抽离为接口,供类继承,实现可扩展的特点。一般遵循1、开闭原则,即对扩展开放,对原来代码修改关闭。2、依赖抽象原则:1)变量不要持有具体类的引用;2)不要让类继承自具体类,要继承自抽象类或接口;3)不要覆盖基类中已实现的方法。3、最少知识原则:尽量减少对象之间的交互,只留几个“密友”。项目设计中不要让太多的类耦合在一起。4、好莱坞原则:别调用我们,我们会调用你。高层无需知道调用底层的细节,解耦。5、单一责任原则:一个类应该只有一个引起变化的原因。

目的是满足可扩展性,降低复杂度等需求

对于接口的理解:接口就像是标签,当子类具有且需要这种标签时就可以实现这个接口来获得这些标签。抽象类中的抽象方法可以抽离出来作为接口。


2、策略模式

解决问题:继承带来的不方便,由于需求的变更,可能有些功能需要添加或修改,当父类被修改时,子类要跟着修改。

实现方法:将父类中可能会变更的方法抽象为更灵活的接口,父类持有该接口对象,子类中声名该接口下具体的实现类对象供父类调用,用这种组合的方式提高复用率


3、观察者模式

解决问题:一个类的对象变化被多个类依赖。

实现方法:被依赖的类实现subject接口,依赖的类实现observer接口。subject接口主要管理observer的注册、删除、通知,操作observer的实例化对象。observer主要更新subject的变化信息。当subject类中信息变化时直接通知observer类,observer类做出相应的反应

你可能感兴趣的:(设计模式一)