单一职责原则的定义是:应该有且仅有一个原因引起类的变更。
对于单一职责原则,我的建议是接口一定要做到单一职责,类的设计尽量做到只有一个原因引起变化。
There should never be more than one reason for a class to change.
接口负责定义public属性和方法,并且声明与其他对象的依赖关系,抽象类负责公共构造部分的实现,实现类准确的实现业务逻辑,同时在适当的时候对父类进行细化。
注意 如果子类不能完整地实现父类的方法,或者父类的某些方法在子类中已经发生“畸变”,则建议断开父子继承关系,采用依赖、聚集、组合等关系代替继承。
尽量避免子类的“个性”,一旦子类有“个性”,这个子类和父类之间的关系就很难调和了,把子类当做父类使用,子类的“个性”被抹杀——委屈了点;把子类单独作为一个业务来使用,则会让代码间的耦合关系变得扑朔迷离——缺乏类替换的标准。
1.子类必须完全实现父类的方法
4.覆写或实现父类的方法时输出结果可以被缩小
世界上最难的事有两件:一是让人心甘情愿地把钱掏出来给你,二是把自己的思想灌输到别人的脑子里。
3.覆盖或实现父类的方法时输入参数可以被放大
❑高层模块不应该依赖低层模块,两者都应该依赖其抽象;❑抽象不应该依赖细节;❑细节应该依赖抽象。
模块间的依赖通过抽象发生,实现类之间不发生直接的依赖关系,其依赖关系是通过接口或抽象类产生的;❑接口或抽象类不依赖于实现类;❑实现类依赖接口或抽象类。
2.Setter方法传递依赖对象
3.接口声明依赖对象
❑任何类都不应该从具体类派生
❑尽量不要覆写基类的方法
❑接口要尽量小
❑接口要高内聚
用一个中介对象封装一系列的对象交互,中介者使各对象不需要显示地相互作用,从而使其耦合松散,而且可以独立地改变它们之间的交互。
将一个请求封装成一个对象,从而让你使用不同的请求把客户端参数化,对请求排队或者记录请求日志,可以提供命令的撤销和恢复功能。
《R语言数据分析与挖掘实战》内容简介:本书共16章,分三个部分:基础篇、实战篇、提高篇。基础篇介绍了数据挖掘的基本原理,实战篇
《智能科学与技术本科专业系列教材•神经网络设计方法与实例分析》从神经网络设计和应用实践出发,介绍了10种常见的人工神经网络的
计算机网络系统集成 本书特色 1.实用性强。面向应用型人才的培养,具有大量当前实用的个案实例研究,让学生学而有用,学而能用2.知识体系具备科学性及新颖性,借鉴国...
【内容简介】本书深入浅出地介绍了Redis的5种数据类型,并通过多个实用示例展示了Redis的用法。除此之外,书中还讲述了Redis的优
《超级面试官》内容简介:面试是人才招聘过程中的重要一环,面试官的水平直接影响到所招人员的素质高低。那么,面试官该具备哪些基
《言语行为与制度社会的建构》内容简介:本书在新的语境下研究了制度社会建构的认知基础尤其是语言基础,并通过作为社会基本构成要
《自然社交,让情绪不再敏感》内容简介:社交敏感者在生活中最大痛点就是对人际关系的处理总显得力不从心,本书根据近百起实际案例
《Project 2016项目管理自学经典》内容简介:本书以案例为主,由浅入深、图文并茂地介绍了Project 2016项目管理的基础知识和应用技
北欧文化有种很特殊的味道。美国洛杉矶艺术设计学院终身教授王受之用独特的见解和宽阔的视野角度、深入浅出的笔触,将北欧本身的
《中国梦实现的根本法保障》内容简介:宪法序言申明的建设富强、民主、文明的社会主义国家是经济、政治、社会、文化与生态文明五位
《Premiere Pro CC 视频编辑案例课堂》内容简介:Adobe Premiere Pro CC是Adobe公司推出的一款非常优秀的视频编辑软件,它以其...
『書‧手作:山崎曜的製本書』超乎興趣的復古工藝之作、一本大人風味的手工書13種製書技法.25件佳作實做詳解.5件職人創作欣賞※
本书是关于数字信号处理(DSP)原理、实现和应用的最新教程。全书在概述了数字信号的产生、定义和处理实例之后,详细讨论了差分方
《周作人散文》内容简介:《中华散文珍藏版:周作人散文》是“中华散文珍藏版”系列丛书之一种,精选了周作人经典散文90篇,如:《
SQL Server 从入门到精通(配光盘)(软件开发视频大讲堂) 本书特色 明日科技编著的《SQL Server从入门到精通(附光盘SQL Server200...
《城市交通出行行为分析及多方式交通协同组织理论与方法》内容简介:本书从基于活动的视角,研究了城市多方式交通网络中交通出行者
ThankstoimprovedwebbrowsersupportandtheadventofHTML5,JavaScriptnowplaysamajorrol...
《黑客与画家(10万册纪念版)》内容简介:你无须改变太多,也能活出精彩一生。这是保罗给我们的心理安抚,同时他也用自己在世俗意
《吕思勉修身课》内容简介:*民国畅销至今,修身入门读物,国人必读经典。*著名历史学家钱穆、严耕望、黄永年等亲身经历的大师课堂
本书对BrainW.Kernighan和DennisM.Ritchie所著的《TheCProgrammingLanguage》(第2版)的所有练习题都进行了解答...