实例解析OOP程序设计七大设计原则(二)

接口隔离原则(Interface Segregation Principle,ISP)

使用多个专门接口来取代一个统一的接口,
一个接口不需要提供太多的行为,一个接口应该只提供一种对外的功能,不应该把所有的操作都封装到一个接口中。
接口隔离原则核心:不应该强迫客户端程序依赖他们 不需要的使用方法
接口隔离原则实例:
比如一个系统中有一个大的接口,这个接口包含了GameobjectA、GameobjecB、GameobjectC三个对象的接口

但是这三个对象中有些接口未必需要实现,现在使用接口隔离原则将接口隔离,这样又满足单一职责原则
重新构造的方案如下图所示


迪米特原则(Law of Demeter,LOD)

又叫做最少知识原则,一个软件实体对其他实体的引用越少越好,或者说如果两个类不必直接通信,那么这两个类就不应当发生直接的相互作用,而是通过一个第三者发生间接性的交互。
迪米特原则核心:高内聚,低耦合
低迷特原理实例:
比如某一系统有多个系统和多个数据源,他们之间的联系图如下:

这样比较杂乱,耦合性较高,使用迪米特原则后的构造方案如下图所示:

迪米特原则缺点:
一、降低模块间的通信效率
二、在系统的各个角落散落大量的小方法

合成复用原则(Composite Reuse Principle,CRP)


在面向对象设计中,可以通过两种基本方法在不同的环境中复用已有的设计和实现,即通过组合或通过继承。
继承复用:实现简单,便于扩展。但是破坏系统的封装性。
组合复用:耦合性相对较低,选择性的调用成员对象的操作。可以再运行时动态运。.
合成复用核心:尽量使用对象组合而不是继承达到复用的目的




欢迎转载,转载注明出处:http://blog.csdn.net/qq_33747722/article/details/76080949

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值