SOLID设计原则

1.单一职责原则

对象应该仅具有一种功能。例如:Activity代码过多导致臃肿,MVP架构分离controller和view之间的耦合

2.开闭原则

一个软件实体如类、模块和函数对扩展开放,对修改关闭。Retrofit、Volley、ImageLoader

3.里氏替换原则

程序中的对象应该是在不改变程序正确性的前提下被它的子类所替代(和多态类似),就好比之前的代码GpsTracker里的startLocation()中,我们声明的是抽象父类,在方法中,我们中工厂模式实现子类

4.接口隔离原则

拆分非常强大臃肿的接口成为更小和更具体的接口,多个特定客户端接口好于一个宽泛用途的接口。例如,Http请求中,在CallBack的时候我们有多个方法(onpre、onupdate、onsuccess。。。。第一个是网络请求前、第二个是下载文件的进度更新),当我们调用get方法时,我们不需要这么多方法,所以应该细分接口。
一个接口有骑飞跑三个功能,当某一个类实现后,如果这个类不具备跑的功能,它仍然要实现跑的方法。

5.依赖倒置原则

就是要依赖于抽象,不要依赖于具体。要求对抽象进行编程,不要对实现进行编程,降低了客户与实现模块间的耦合。还是GpsTracker里的方法例子。

你可能感兴趣的:(SOLID设计原则)