#面向对象的六大原则

来源:互联网 发布:北师珠网络教学综合 编辑:程序博客网 时间:2024/05/17 09:18

最近公司解散,面临着重新找工作的压力。写简历贴博客的时候才发现博客的内容有点空。之前定的一周一原创的远大目标,现在看看连一个月一篇,甚至一个季度一篇的目标都没达到。印证了最近很流行的一句话:晚上想想千条路,早上起来走原路。分析其根本原因我觉得是目标定的太高,哪有人一开始就能写出大量高质量的原创文章,而且更何况是技术类的。为什么不把写博客当成一个习惯,一个总结自己学习心得的平台。先不管文章的质量如何,文章对其他人的帮助有多大。首先能引发自己的思考、能加深对知识点的理解、提升自己的能力才是第一位。能力提升了,写出的文章质量肯定会更高,对看文章的人产生的帮助也会越大,这是一个良性的循环。

英雄要先拯救自己,才能拯救人类!!!

最近因为要面试,所以重新翻阅了「开发者艺术」、「Android源码设计模式」。看完发现收获没有想象中的大,所以就想写个读书笔记加深理解。不求能产生多大的影响,只求对的起码字花费的时间和精力。

一张思维导图罗列面向对象六大原则和定义:

这里写图片描述


单一职责原则
根据具体的业务、功能对类进行相应的拆分。这样会使代码结构和职责更加清晰。当业务逻辑变化时,只需要修改该业务逻辑相关的类就行。

开闭原则
当软件需要变化的时候应该尽量通过扩展的方式实现变化,而不是通过修改已有的代码来实现。

里氏替换原则
通过抽象建立规范,具体的实现在运行时替换掉抽象,保证系统的扩展性、灵活性。抽象是走向代码优化的重要一步。

依赖倒置原则
- 高层模块不应该依赖低层模块,两者都应该依赖其抽象
- 抽象不应该依赖细节
- 细节应该依赖抽象

模块间的依赖通过抽象产生,实现类直接不发生直接的依赖关系,发生依赖关系通过抽象或者接口

接口隔离原则
将非常庞大、臃肿的接口拆分成更小的和更具体的接口,使系统解开耦合,从而容易重构、更改和重新部署。

迪米特原则
一个类应该对自己需要耦合或者调用的类知道的最少,类的内部实现与调用者或者依赖者没关系,调用者或者依赖者只需要知道它所需要的方法即可。类与类之间的关系越密切,耦合度就越大!!!

原创粉丝点击