设计模式之禅之接口隔离原则

声明:本文为阅读秦小波所写的《设计模式之禅》所写小结,文章内容可能有部分引述此书。

接口隔离原则(Interface Segregation Principle):每个模块接口独立

1、定义:

   每个模块的接口应该都是单一的,有几个模块就应该有几个接口,而不是建立一个庞大臃肿的接口,容纳所有客户端访问。

接口类型分为两种:

   1)实例接口:Java中用new关键字产生的实例,它的类即是这个实例的接口;
   2)类接口:Java中用Interface关键字定义的接口。

接口隔离的几点声明:

   建立单一的接口——每个模块都是单一接口;
   不要建立臃肿庞大的接口——多个模块访问唯一接口,这是错误的;
   尽量细化,接口中方法尽量少。

2、接口隔离原则的四层含义:

   1)接口尽量小,但拆分时,首先必须满足单一职责原则;
   2)接口要高内聚,提高接口、类、模块的处理能力,减少对外的交互;这就要求尽可能少地公布public方法,降低变更的风险;
   3)定制服务:针对不同的个体,提供不同的接口;减少性能故障。
   4)接口设计注意适度:接口设计粒度越小,会带来结构复杂化,导致开发难度增加,维护性降低。

3、接口隔离原则的粒度衡量:

   1)一个接口只服务于一个子模块或业务逻辑;
   2)通过业务逻辑压缩接口中的public方法,时常进行接口回顾;
   3)已经被污染的接口,尽量去修改,若变更风险太大,则采用适配器模式(继承旧的,依赖新的)进行转化;
   4)了解环境,拒绝盲从,实事求是。

小结:接口隔离原则,主要要求的是每个模块接口独立,因此接口粒度把控很重要。

注:本文大多数内容基本从《设计模式之禅中》摘录,也有小部分自己的理解,如果有误欢迎大家批评指正。如有问题,也欢迎大家积极留言探讨。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值