![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
面向对象设计原则
文章平均质量分 89
刘丶DD
程序人生
展开
-
面向对象设计原则(三)里氏代换原则
面向对象设计原则之里氏代换原则这次我们介绍的是面向对象设计里最重要的原则之一里氏代换原则。里氏代换原则由2008年图灵奖得主、美国第一位计算机科学女博士Barbara Liskov教授和卡内基·梅隆大学Jeannette Wing教授于1994年提出。定义其严格表述如下: 如果对每一个类型为S的对象o1,都有类型为T的对象o2,使得以T定义的所有程序P在所有的对象o1代换o2时...原创 2018-06-26 23:59:36 · 266 阅读 · 0 评论 -
面向对象设计原则(一)单一原则
面向对象设计原则之单一原则单一原则是最简单的面向对象设计原则,它用于控制类的粒度大小。单一原则的定义单一职责原则定义如下: 单一职责原则(Single Responsibility Principle, SRP):一个类只负责一个功能领域中的相 应职责,或者可以定义为:就一个类而言,应该只有一个引起它变化的原因。从定义中告诉我们,在软件系统中,一个类承担的职责越...原创 2018-06-26 23:31:18 · 1052 阅读 · 0 评论 -
面向对象设计原则(二)开闭原则
面向对象设计原则之开闭原则开闭原则是面向对象的可复用设计的第一块基石,它是最重要的面向对象设计原则。开闭原则的定义开闭原则由Bertrand Meyer于1988年提出。其定义如下: 开闭原则(Open-Closed Principle, OCP):一个软件实体应当对扩展开放,对修改关闭。即软件 实体应尽量在不修改原有代码的情况下进行扩展。现在软件设计面临的一个重要...原创 2018-06-26 15:58:30 · 326 阅读 · 0 评论 -
面向对象设计原则(四)依赖倒转原则
面向对象设计原则之依赖倒转原则如果说开闭原则是面向对象设计的目标的话,那么依赖倒转原则就是面向对象设计的主要实现机制之一,它是系统抽象化的具体实现。定义 依赖倒转原则(Dependency Inversion Principle, DIP):抽象不应该依赖于细节,细节应当依赖于抽象。换言之,要针对接口编程,而不是针对实现编程。使用依赖倒转原则要求我们在程序代码中传递参数时...原创 2018-06-27 00:40:31 · 238 阅读 · 0 评论 -
面向对象设计原则(五)接口隔离原则
面向对象设计原则之接口隔离原则首先我们看看接口隔离原则的定义定义 接口隔离原则(Interface Segregation Principle, ISP):使用多个专门的接口,而不使用单一的总接口,即客户端不应该依赖那些它不需要的接口。根据接口隔离原则,当一个接口太大的时候,我们就需要将它分割为一些更加细小的接口,使用该接口的客户端仅需知道与之相关的方法即可。每一个接口应该承...原创 2018-06-27 15:03:26 · 709 阅读 · 0 评论 -
面向对象设计原则(六)合成复用原则
面向对象设计原则之合成复用原则合成复用原则又称为组合/聚合复用原则(Composition/Aggregate Reuse Principle, CARP)。定义其定义如下: 合成复用原则(Composite Reuse Principle, CRP):尽量使用对象组合,而不是继承来达到复用的目的。合成复用原则就是在一个新的对象里通过关联关系(包括组合关系和聚合关系)...原创 2018-06-27 15:51:42 · 798 阅读 · 0 评论 -
面向对象设计原则(七)迪米特法则
面向对象设计原则之迪米特法则迪米特法则又称为最少知识原则(LeastKnowledge Principle, LKP)。定义其定义如下: 迪米特法则(Law of Demeter, LoD):一个软件实体应当尽可能少地与其他实体发生相互作用。迪米特法则还有几种定义形式,包括:不要和“陌生人”说话、只与你的直接朋友通信等,在迪米特法则中,对于一个对象,其朋友包括以下几类:...原创 2018-06-27 16:10:18 · 388 阅读 · 0 评论