设计模式主要是基于如下的面向对象设计原则: (1)对接口编程而不是对实现编程; (2)优先使用对象组合而不是继承。 设计模式的六大原则:编程
一个软件实体如类,模块,和函数应该对扩展开放,对修改关闭.在软件的生命周期内,因变化,升级和维护对原有代码进行修改,可能会引发错误.因此当软件发生变化时,经过扩展软件实体的行为来实现变化,而不是修改原有的代码. 为了知足开闭原则,须要对系统进行抽象化设计,抽象化是开闭原则的关键
详细了解设计模式
任何基类(父类)能够出现,子类必定能够出现.里氏代换原则是继承复用的基石,只有当衍生类能够替换掉基类,软件单位的功能不受到影响时,基类才能真正的被复用,而衍生类也可以在基类的基础上增长新的行为.里氏代换原则是对开闭原则的补充, 实现“开-闭”原则的关键步骤就是抽象化。而基类与子类的继承关系就是抽象化的具体实现,因此里氏代换原则是对实现抽象化的具体步骤的规范.通俗的说就是:子类能够扩展父类的功能,但不能改变父类原有的功能
详细了解函数
一个类只负责一项职责详细了解.net
高层模块不该该依赖底层模块,两者都应该依赖抽象.抽象不该该依赖细节,细节应该依赖抽象.通俗的讲就是;多用抽象的接口描述相同的动做,下降实现这个动做的人和物之间的耦合度详细了解设计
客户端不该该依赖他不须要的接口,一个类对另外一个类的依赖应该创建在最小的接口上详细了解code
一个对象应该保持对其余对象最少的了解.类与类之间的关系越密切,耦合度越大,当一个类发生改变时,对一个类的影响也越大.详细了解对象