1. Why?
应用这条原则,可以将接口和实现相分离,封装不稳定的实现,只暴露稳定的接口。调用方面向接口而非实现编程,就不依赖不稳定的实现细节,这样当实现发生变化的时候,调用方基本上不需要做改动,降低了耦合性,提高了代码的灵活性、可维护性。
2. How?
- 函数的命名不能暴露任何实现的细节。
- 封装具体的实现流程和细节。
- 为实现类定义抽象的接口。
越是不稳定的系统或功能,越是要在代码的扩展性、维护性上下功夫。相反,如果某个系统或功能特别稳定,后续基本上不会有变更,那就没必要为其扩展性,投入不必要的开发时间。
网友评论