扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
即使你使用了接口+基类的方式,也不能保证你API的演化。
我认为,如果可能的话,在为基类添加新方法的同时,也应该在接口中添加新的方法。我向来如此,也没有出现过什么问题。
很清楚的一点就是,如果这样做了,接口的定义改了,如果一个类是直接实现这个接口,就需要实现所有的方法。
Michael Feathers 写道:
在什么环境下我们要同时提供接口和抽象类呢。
接口+基类并不是可以用于所有的场景!
大部分情况下,我都会使用接口+基类这种方式,不过这种方式也会带有几个缺点。
如果你的API比较复杂,很难找到一个准确的入口点来使用你的API。比如说我需要一个IX,但是我要一步步的向下查找AbstractX,以及相关的实现,这种接口+基类的方式加深了继承的层次,增加了API的复杂度。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者