设计模式--六大原则

面向对象的设计的几个目标:

  1. 可扩展性,比较容易添加新的功能;
  2. 灵活性,容易添加新的功能代码修改平稳地发生;
  3. 可插入性,容易将一个类处出来,同时接入另一个同样接口的类。

终极的判断软件设计质量的标准:

高内聚,低耦合

  1. 耦合性:模块之间的关系紧密程度。越紧密,耦合性越强,模块独立性越差,取决于模块间接口的复杂性,调用的方式,传递的信息;
  2. 内聚性:模块内部关系紧密为高内聚;
  3. 高内聚:单一模块内部相关性较强,只负责单独任务,不可分割;
  4. 低耦合:尽可能多模块之间独立性较强。

设计基本原则:

1,单一职责原则(Single-Responsibility Principle):一个类只处理一个职责,也就是说不要将很多东西都放在一个类里面,尽可能拆分处理,让每个类只负责某一部分的功能。

2,里氏置换原则(Liskov Substitution Principle):Base类及其集成类的关系,子类除了新增尽可能不去重写和重载父类的方法,也就是说不要破坏父类的功能,通过不同的实现子类来进行扩展,并避免对父类进行修改。

3,依赖倒置原则(Dependence Inversion Principle):说的是接口,抽象类及其实现类之间的关系,也就是说接口,抽象类不负责具体逻辑,具体逻辑交给继承或者实现类去处理,实现类依赖于接口和抽象类,而抽象类不依赖于实现类,减少对具体实现的耦合,通过抽象类或者接口实现解耦合

网上具体讲解的实例:http://www.cnblogs.com/lzh_527/archive/2012/02/15/2352939.html

4,接口隔离原则(Interface Segregation Principle):也就是说尽可能避免一个类和接口里面多个方法之间的关系,将接口合理细化,但不要过度细化。

5,迪米特原则(Law of Demeter):减少类与类之间的耦合。

6,开闭原则(open-Closed Principle):对修改关闭,对扩展开放,也就是说在业务迭代过程中,不应该去修改原有的业务逻辑,而应该通过继承来在原来的基础上进行扩展,而不对原有逻辑进行修改,当然原有逻辑是错的不包括在内。

 

posted @ 2016-04-18 22:01  西北野狼  阅读(204)  评论(0编辑  收藏  举报