每日Android源码设计模式之-24、总结

面向对象程序设计是有六大原则的,但是这些原则也不是一定要遵循,只是说遵循这些原则能大大提高程序的解耦和扩展性,当然困难的是吧这些原则细分到什么程度,这个就要靠个人经验了。


1.单一职责原则

Single Responsibility Principle (SRP)

定义:就一个类而言,应该仅有一个引起它变化的原因。或者说一个类中应该是一组相关性很高的函数、数据的封装。

比如图片加载类里面把缓存,网络获取图片等功能放到不同的类中,一个类负责一件事情,避免一个类从事过多过杂的工作。

但是在项目业务中具体到如何划分一个类、方法,就要凭借个人经验和具体的业务来定了。


2.开闭原则

Open Close Principle

定义:软件中的对象(类、模块、函数等)应该是对扩展开发的,但是对修改是封闭的。

理想状态是在开发完毕后,除非因为错误问题,不会去修改一个类。

如果要增加新功能或者改变特性,应该新建新的类来实现,新的类可以通过继承来复用以前的代码。

比如采用策略模式,或者使用依赖注入来改变对象的行为。


3.里氏替换原则

所有使用基类的地方,都能透明的使用其子类对象。


4.依赖倒置原则

高层模块不应该依赖低层模块,两者都应该依赖其抽象

抽象不应该依赖细节

细节应该依赖抽象


5.接口隔离原则

客户端不应该依赖他不需要的接口。

类之间的依赖关系应该建立在最小的接口上。


6.迪米特原则

LOD,也称为 最小知识原则

一个对象应该对其他对象有最少的了解。

你可能感兴趣的:(每日Android源码设计模式之-24、总结)