《Android 源码设计模式解析与实战》—— 代码优化原则

随着需求的迭代、业务代码冗余、逻辑繁复是很正常的表现,但是有了这种不合理设计的表现的时候我们就需要将项目向一个合理演化的方向迭代。以下是《Android 源码设计模式解析与实战》书中的代码优化原则,单一职责、开闭原则、里氏替换原则、依赖倒置原则、接口隔离原则、迪米特原则。

优化代码的原则:

  • 单一职责原则 Single Responsibility Principle 一个类应该是一组相关性很高的函数、数据的封装
  • 开闭原则 Open Close Principle 软件中的对象(类、模块、函数等)应该对于扩展是开放的,但是对于修改是封闭的。
  • 里氏替换原则 Liskov Substitution Principle 如果对每一个类型为S的对象O1,都有类型为T的对象O2,使得以T定义的所有程序P在所有的对象O1都代换成O2时,程序P的行为没有发生变化,那么类型S是类型T的子类型。
    • —— 所有引用基类的地方必须能透明地使用其子类的对象。 —— 抽象
    • 模块间依赖通过抽象发生,实现类之间不发生直接的依赖关系,其依赖关系是通过接口或抽象类产生的。
  • 依赖倒置原则 Dependency Inversion Principle
    • 高层模块不应该依赖底层模块,两者都应该依赖其抽象
    • 抽象不应该依赖细节
    • 细节应该依赖抽象
  • 接口隔离原则 Interface Segregation Principle
    • 客户端不应该依赖它不需要的接口
    • 类间的依赖关系应该建立在最小的接口上
    • 接口隔离原则将非常庞大、臃肿的接口拆分成更小的和更具体的接口,这样客户将会只需要知道他们感兴趣的方法
    • 接口隔离原则的目的是系统解开耦合,从而容易重构、更改和重新部署。
  • 迪米特原则 Law of Demeter 最小知识原则 Least Knowledge Principle 一个对象应该对其他对象有最少的了解

理解这些原则的背后就是观察自己项目代码中哪些地方在迭代的过程中违反这一原则,而要逐渐替换掉这些不合理的设计时,也要关注自己的设计是否符合长期的规划及今后迭代的方向。

你可能感兴趣的:(《Android 源码设计模式解析与实战》—— 代码优化原则)