面向对象的基本原则

五个基本原则:

单一职责原则(Single-Resposibility Principle):一个类,最好只做一件事,只有一个引起它的变化。单一职责原则可以看做是低耦合、高内聚在面向对象原则上的引申,将职责定义为引起变化的原因,以提高内聚性来减少引起变化的原因。

开放封闭原则(Open-Closed principle):软件实体应该是可扩展的,而不可修改的。也就是,对扩展开放,对修改封闭的。

里氏替换原则(Liskov-Substituion Principle):子类必须能够替换其基类。这一思想体现为对继承机制的约束规范,只有子类能够替换基类时,才能保证系统在运行期内识别子类,这是保证继承复用的基础。

接口隔离原则(Interface-Segregation Principle):使用多个小的专门的接口,而不要使用一个大的总接口


依赖倒置原则(Dependecy-Inversion Principle):依赖于抽象。具体而言就是高层模块不依赖于底层模块,二者都同依赖于抽象;抽象不依赖于具体,具体依赖于抽象。

s o l i d---简记

时间: 2024-11-06 04:50:34

面向对象的基本原则的相关文章

面向对象的基本原则(四)----依赖倒置原则

描述:A .高层模块不应该依赖于低层模块.二者都应该依赖于抽象.B .抽象不应该依赖于细节.细节应该依赖于抽象. 应 用:要依赖抽象,不要依赖于具体.即针对接口编程,不要针对实现编程.针对接口编程的意思是,应当使用接口和抽象类进行变量的类型声明.参量的类型声明, 方法的返还类型声明,以及数据类型的转换等.不要针对实现编程的意思就是说,不应当使用具体类进行变量的类型声明.参量的类型声明,方法的返还类型声明, 以及数据类型的转换等. 结论:DIP虽然强大,但却不易实现,因为依赖倒转的缘故,对象的创建

面向对象的基本原则(三)------里氏替代原则

一.定义 里氏替代原则(LSP),英文全称是Liskov Substitution Principle,Liskov是该替代原则的提出者.该原则的思想是:在任何父类出现的地方都可以用它的子类来替代,而不影响功能. 其实里氏替代原则的意思就是:同一个继承体系中的对象应该有共同的行为特征.里氏代换原则关注的是怎样良好地使用继承,也就是说不要滥用继承,它是继承复用的基石. 二.好处 里氏替代原则是对开闭原则的扩展.如果要采用开闭原则必然用到抽象和多态,而这又离不开继承,里氏替代原则就是对如何良好继承提

面向对象的基本原则(一)------单一职能原则

一.定义 单一职责原则(SRP),英文全称是Single Responsibility Principle,该原则的思想是:系统中的每一个类都应该只有一个单独的职责,而所有类所关注的就是自身职责的完成. SRP中,把职责定义为“变化的原因”.如果你能想到多个原因去改变一个类,那么这个类就具有多于一个的职责. 二.好处 其实单一职责原则的意思就是开发人员经常说的“高内聚.低耦合”.也就是说,每个类应该只有一个职责,对外只能提供一种功能,而引起类变化的原因应该只有一个. 如果一个类有一个以上的职责,

面向对象的基本原则 与 设计模式

设计原则是一种指导性,比较抽象的理念.而设计模式是为了实现设计原则的一种良好的实践经验. 在接触了一段时间面向对象的程序设计后.不可不学的首先就是设计模式.使用设计模式的目的就是使代码变得更加的清晰,易读,易理解,可重用,可拓展,已维护. 他所带来的好处多多,付出的代价可能只是写代码时需要多写几行.相对于以上的优点,这点代价是微不足道的. 在我看来.实际上并不存在固定的设计模式.设计模式只是对 面向对象的基本原则 的一种良好的实现或者说是一种经验总结,这种经验的总结可以是多样的.(当然,这种实现

面向对象的基本原则(二)------开闭原则

一.定义 开闭原则(OCP),英文全称是Open for extention, Closed for modification Principle,即对扩展开放,对修改关闭原则.该原则的思想是,可以通过扩展来满足变化,而不需要修改代码,或者说在设计一个模块的时候,应当使这 个模块可以在不被修改的前提下被扩展. 二.实现 实现开闭原则的关键是抽象,抽象是面向对象设计的一个核心特征. 对一个事物抽象化,实质上是在概括归纳总结它的本质.抽象让我们抓住最最重要的东西,从更高一层去思考,这降低了思考的复杂

面向对象六大基本原则的理解

在学习设计模式的时候,总是被推荐先学习一下面向对象的六大原则,学习后果然受益匪浅.以下完全是我对六大基本原则的理解,和官网解释可能有出路,而且我更多是站在设计模式的角度,而不是面向对象的角度理解,如果有什么错误,敬亲谅解. 1.开闭原则 很多教程都把开闭原则作为这六大原则中最基本的原则,也就是说他是各个原则的核心.开闭原则指的是,一个软件实体如类.模块和函数应该对扩展开放,对修改关闭. 至于这个具体怎么理解,我也看了很多教程,有些教程说当我们遇到新的需求,就需要我们对我们模块继承的形式进行扩展,

PHP面向对象编程基本原则

首先祝大家节日快乐!!! 额,不知道你们剁手没,小梦是没有!整整已经错过了第九个年头! 小伙伴是不是有一种感觉,PHP入门的时候简直爱不释手,总是把 "PHP是世界上最好的语言" 挂在嘴边上,觉得他简单,快速完成项目! 然儿,终于有一天,你开发的项目过于庞大的时候,突然发现:我写的代码好乱,扩展性好低,可维护性好差....... 然后你就下定决心要重构你的项目?想来想去,当然是面向对象编程了,然后加上各种设计模式!你就开始干了!!! 下面就给大家讲一下面向对象的设计原则,当然面向对象的

面向对象五大基本原则

面向对象的五大基本原则 单一职责原则(SRP)开放封闭原则(OCP) 里氏替换原则(LSP) 依赖倒置原则(DIP) 接口隔离原则(ISP) 原文地址:https://www.cnblogs.com/zhznb/p/9210554.html

面向对象——三大特性,五大基本原则

三大特性是:封装.继承.多态 封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏. 封装是面向对象的特征之一,是对象和类概念的主要特性. 简单的说,一个类就是一个封装了数据以及操作这些数据的代码的逻辑实体.在一个对象内部,某些代码或某些数据可以是私有的,不能被外界访问.通过这种方式,对象对内部数据提供了不同级别的保护,以防止程序中无关的部分意外的改变或错误的使用了对象的私有部分. 继承是指可以让某个类型的对象获得另一个类型的对象的属