开放-封闭原则

本文介绍了软件设计中的开放-封闭原则,强调了软件实体应当易于扩展但不易于修改的设计理念。该原则通过创建抽象来应对需求变化,有助于提高软件的可维护性、可扩展性和复用性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

简介

开放-封闭原则:软件实体(类,模块,函数等等)应该可以扩展但是不可修改。对于扩展是开放的,对于更改是封闭的。

面对需求变化时,我们是增加代码,而不是改变原有的代码,当需求变化发生时,我们就创建抽象来隔离以后将要发生同类的变化

目的

1. 在软件的生命周期内,因为变化、升级和维护等原因需要对软件原有代码进行修改时,可能会给旧代码中引入错误,也可能会使我们不得不对整个功能进行重构,并且需要原有代码经过重新测试

实现

1.面对变化,通过创建抽象来隔离以后发生的同类变化。

优点

开放-封闭原则是面向对象设计的核心所在,遵循这个原则可以带来面向对象技术所声称的巨大好处。可维护,可扩展,可复用,灵活性好。

缺点

开发人员应该仅对程序中出现频繁变化的部分进行抽象,拒绝不成熟的抽象。

总结

 开闭原则无非就是想表达这样一层意思:用抽象构建框架,用实现扩展细节。因为抽象灵活性好,适应性广,只要抽象的合理,可以基本保持软件架构的稳定。而软件中易变的细节,我们用从抽象派生的实现类来进行扩展,当软件需要发生变化时,我们只需要根据需求重新派生一个实现类来扩展就可以了。当然前提是我们的抽象要合理,要对需求的变更有前瞻性和预见性才行。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值