对变化的封装包含两层含义:
第一,将相同的变化封装到一个接口或抽象类中;
第二,将不同的变化封装到不同的接口或抽象类中,不应该由两个不同的变化出现在同一个接口或抽象类中;
封装变化,也就是受保护的变化,找出预计有变化或不稳定的点,我们为这些变化点创建稳定的接口,准确地讲是封装可能发生的变化,一旦预测或”第六感”发觉有变化,就可以进行封装,23种设计模式都是从各个不同的角度对变化进行封装的。
4.最佳实践我们在使用开闭原则时要注意以下几个问题?
开闭原则也只是一个原则(开闭原则只是精神口号,实现拥抱变化的方法非常多,并不局限于6大设计原则,但是遵循这6大设计原则基本上可以应对大多数变化);
项目规章非常重要(优秀的章程可以给项目带来很多好处,如提高开放效率、降低缺陷率、提高团队士气、提高技术成员水平等);
预知变化(适应未来的变化,比如未来新增某项功能需求,在不影响现有的架构下,轻松扩展就能实现等);