如何理解开闭原则
Open Closed Principle —— software entities (modules, classes, functions, etc) should be open for extension, but closed for modification.
即在添加一个新功能时,尽量避免已有的代码基础上进行拓展(添加类、函数、模块等),而非修改已有代码。核心目标是,以最小修改代码的代价,来完成新功能的开发。
开闭原则重点在于提高代码拓展性,体现开闭原则的设计思想有:多态、依赖注入、基于接口而非实现编程,设计模式里的装饰器模式、策略模式、职责链模式等。