已发布接口与公共接口

已发布接口(published interface)与公共接口(public interface)

表弟在读《重构》一书,对已发布接口的概念有些迷惑,我对其进行通俗的解释如下:

已发布接口是指已经发布出去为其他系统的构件所使用的接口,有多少接口的调用者是无法知道的,已发布接口必须保持稳定,否则一旦修改,将引起其调用者的失败,而又不可能穷举出其调用者对他们进行修改,因为接口的作者不知道有多少调用者,接口的作者也无权修改借口的调用者。假设A为一个已发布接口,如果对A进行了修改形成了新的接口B,则为了保证A的调用者能够正常工作,需要在A中调用B,而新的需要调用A接口的构件直接调用B接口就可以了。所以Martin Flower讲“不要过早发布接口”,否则一旦接口不稳定,问题就复杂了。

公共接口是指为系统内的其他构件所使用的接口,有多少接口的调用者是可以穷举的,修改公共接口时,可以修改其调用者,使调用者能够在新版的接口上正常工作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值