设计模式(Design pattern)是一套被反复使用、多数人知晓的、通过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的;设计模式使代码编制真正工程化;设计模式是软件工程基石脉络,如同大厦的结构同样。设计模式
设计模式的介绍
函数
一、建立型。解决对象的建立问题。 ui
简单工厂模式(Simple Factory);工厂方法模式(Factory Method);抽象工厂模式(Abstract Factory);建立者模式(Builder);原型模式(Prototype);单例模式(Singleton)。spa
简单工厂模式不是GoF总结出来的23种设计模式之一。设计
二、结构型模式。解决对象的组成以及对象之间的依赖关系,由于如何设计对象的结构、继承和依赖关系会影响到后续程序的维护性、代码的健壮性、耦合性等。代理
外观模式(Facade);适配器模式(Adapter);代理模式(Proxy);装饰模式(Decorator);桥模式(Bridge);组合模式(Composite);享元模式(Flyweight)。server
三、行为型模式。解决对象见的协做问题。对象
模板方法模式(Template Method);观察者模式(Observer);状态模式(State);策略模式(Strategy);职责链模式(Chain of Responsibility);命令模式(Command);访问者模式(Visitor);调停者模式(Mediator);备忘录模式(Memento);迭代器模式(Iterator);解释器模式(Interpreter)。继承
设计原则介绍接口
单一职责原则(Single Responsibility Principle):不要存在多于一个致使类变动的缘由。通俗的说,即一个类只负责一项职责。
里氏替换原则(Liskov Substitution Principle):全部引用基类的地方必须能透明地使用其子类的对象。通俗的来说,子类能够扩展父类的功能,但不能改变父类原有的功能。
依赖倒置原则(Dependence Inversion Principle):高层模块不该该依赖低层模块,两者都应该依赖其抽象;抽象不该该依赖细节;细节应该依赖抽象。
接口隔离原则(Interface Segregation Principle):不该该依赖它不须要的接口;一个类对另外一个类的依赖应该创建在最小的接口上。
迪米特法则(Law Of Demeter):一个对象应该对其余对象保持最少的了解。
开闭原则(Open Close Principle):类、模块和函数应该对扩展开放,对修改关闭。