开闭原则的核心思想就是:一个对象对扩展开放,对修改关闭。它的英文缩写是OCP,英文全称是Open for Extension,Closed for Modification。
开闭原则的意思就是:对类的改动是通过增加代码进行的,而不是改动现有的代码。也就是说,软件开发人员一旦写出了可以运行的代码,就不应该去改变它,而是要保证它能一直运行下去,如何才能做到这一点呢?这就需要借助于抽象和多态,即把可能变化的内容抽象出来,从而使抽象的部分是相对稳定的,而具体的实现层则是可以改变和扩展的。
例如: 有一个需要解析bmp文件和png文件,并提取图像数据的功能.
图像文件解析类使用bmp解析类和png解析类这两个类对图像进行解析,假设现在要增加解析jpg文件的功能,我们的设计应该是增加一个jpg解析类即可. 而不应该去修改bmp解析类或者png解析类来满足新的功能.
其实也很容易理解: 通常我们在开发的时候,遇到新的功能增加,我们也是尽量避免修改原来的代码,而是增加代码.
因为原来的代码已经测试过和运行过是没有问题的,如果新增的功能时改变了这些代码,可能会改出问题而且你需要重新测试.
这个原则在函数设计,类设计等等都适用.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。