开闭原则在SCA架构中的应用
来源:互联网 发布:无线打印机软件下载 编辑:程序博客网 时间:2024/06/04 18:52
开-闭”原则(Open-Closed Principle)是面向对象的可复用设计(Object Oriented Design或OOD)的基石。其他设计原则(里氏代换原则、依赖倒转原则、合成/聚合复用原则、迪米特法则、接口隔离原则)是实现“开-闭”原则的手段和工具。
“开-闭”原则的定义
定义:一个软件实体应当对扩展开放,对修改关闭。
( Software entities should be open for extension,but closed for modification)。
在设计一个软件系统模块的时候,应该使这个模块可以在不被修改的前提下被扩展,或者说,可以在不必修改原来代码的情况下改变这个模块的行为。
满足“开-闭”原则的系统的优点
1)通过扩展已有的软件系统,可以提供新的行为,以满足对软件的新需求,使变化中的软件系统有一定的适应性和灵活性。
2)已有的软件模块,特别是最重要的抽象层模块不能再修改,这就使变化中的软件系统有一定的稳定性和延续性。
具有这样两个优点的系统是一个在高层次上实现了复用的系统,也是一个易于维护的系统。
“开-闭”原则的实现——抽象化
面向对象编程语言可以使用抽象的方法,为系统定义一个不再更改的抽象设计来作为系统的抽象层。这个抽象层覆盖了所有未来可能扩展,因此在任何情况都不会改变。这样使系统的抽象层保持不变,从而满足了开闭原则的第二点:对修改关闭。
由于从抽象层导出的一个或多个具体类可以改变系统的行为,因为系统的设计对扩展是开放的,从而满足了开闭原则的第一点:对扩展开放。
在SCA框架中,无论在commonj还是SPI;无论是composite还是component,都可以看到开闭原则的应用。
- 开闭原则在SCA架构中的应用
- OO中的开闭原则
- 设计模式中的开闭原则
- SCA技术在实际应用开发中的实践(1)-序
- 面向对象软件设计中的开闭原则
- 开闭原则
- 开闭原则
- 开闭原则
- 开闭原则
- 开闭原则
- 开闭原则
- 开闭原则
- 开闭原则
- 开闭原则
- 开闭原则
- 开闭原则
- 开闭原则
- 开闭原则
- 谈谈String和StringBuffer
- Lucene.net中文分词探究
- 枫叶国国歌
- 架构设计贵在务实
- PetShop的系统架构设计 《解剖PetShop》系列之一
- 开闭原则在SCA架构中的应用
- PetShop数据访问层之消息处理 《解剖PetShop》系列之三
- PetShop数据访问层之数据库访问设计《解剖PetShop》系列之二
- Java中的对象类型像引用还是指针,谁是谁非?
- 研究生在群里讲的笑话!
- PetShop之表示层设计 《解剖PetShop》系列之六
- PetShop之ASP.NET缓存 《解剖PetShop》系列之四
- ATTITUDE 有趣的计算
- PetShop之业务逻辑层设计 《解剖PetShop》系列之五