这条原则的设计初衷是,将接口和实现相分离,封装不稳定的实现,暴露
稳定的接口。上游系统面向接口而非实现编程,不依赖不稳定的实现细节,这样当实现发生
变化的时候,上游系统的代码基本上不需要做改动,以此来降低代码间的耦合性,提高代码
的扩展性。
从这个设计初衷上来看,如果在我们的业务场景中,某个功能只有一种实现方式,未来也不
可能被其他实现方式替换,那我们就没有必要为其设计接口,也没有必要基于接口编程,直
接使用实现类就可以了。
除此之外,越是不稳定的系统,我们越是要在代码的扩展性、维护性上下功夫。相反,如果
某个系统特别稳定,在开发完之后,基本上不需要做维护,那我们就没有必要为其扩展性,
投入不必要的开发时间。
原文:https://www.cnblogs.com/ptbx1t/p/13945979.html