设计模式总共有23种,然后核心思想是6大原则:
1.单一职责原则:一个类只有一个引起变化的原因
2.迪米特法则:如果两个类不必彼此直接通信,那么这两个类就不应当发生直接的相互作用
3.里氏替换原则:子类必须能够替换掉他们的父类
4.开闭原则:对扩展开放,对修改关闭
5.依赖倒置原则:程序要依赖于接口,不依赖于实现
6.接口隔离原则:客户端不应该依赖它不需要的接口;类间的依赖应该建立在最小的接口上
其实感觉设计模式还是很难完全应用的,我看到有人说过,设计模式是为了让程序高内聚、低耦合而存在的(是不是看到了熟悉的字眼),不要为了使用设计模式而使用设计模式。
我在工作中用到了几个设计模式在这里列一下:单例模式、观察者模式、工厂模式、建造者模式、适配器模式、策略模式、中介者模式、状态模式。没有用到的或者说有用到但是没意识到的模式:抽象工厂模式、原型模式、桥接模式、组合模式、装饰模式、外观模式、享元模式、代理模式、访问者模式、模板模式、备忘录模式、迭代器模式、解释器模式、命令模式、责任链模式。
我认为要想写好程序,最重要的基本功是两个:抽象和回调。这里主要还是抽象,只有抽象好了,才能做到真正的面向对象、定义好接口。我认为设计模式只是技巧,相当于自己DIY主机的时候的捋线技巧,它可以让你的主机看上去不那么杂乱无章。