博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
开闭原则在SCA架构中的应用
阅读量:2498 次
发布时间:2019-05-11

本文共 893 字,大约阅读时间需要 2 分钟。

-原则(Open-Closed Principle)是面向对象的可复用设计(Object Oriented DesignOOD)的基石。其他设计原则(里氏代换原则、依赖倒转原则、合成/聚合复用原则、迪米特法则、接口隔离原则)是实现-原则的手段和工具。

  -原则的定义

  定义:一个软件实体应当对扩展开放,对修改关闭。( Software entities should be open for extension,but closed for modification)

  在设计一个软件系统模块的时候,应该使这个模块可以在不被修改的前提下被扩展,或者说,可以在不必修改原来代码的情况下改变这个模块的行为。

  满足-原则的系统的优点

  1)通过扩展已有的软件系统,可以提供新的行为,以满足对软件的新需求,使变化中的软件系统有一定的适应性和灵活性。

  2)已有的软件模块,特别是最重要的抽象层模块不能再修改,这就使变化中的软件系统有一定的稳定性和延续性。

  具有这样两个优点的系统是一个在高层次上实现了复用的系统,也是一个易于维护的系统。

  -原则的实现——抽象化

  面向对象编程语言可以使用抽象的方法,为系统定义一个不再更改的抽象设计来作为系统的抽象层。这个抽象层覆盖了所有未来可能扩展,因此在任何情况都不会改变。这样使系统的抽象层保持不变,从而满足了开闭原则的第二点:对修改关闭。

  由于从抽象层导出的一个或多个具体类可以改变系统的行为,因为系统的设计对扩展是开放的,从而满足了开闭原则的第一点:对扩展开放。

  在SCA框架中,无论在commonj还是SPI;无论是composite还是component,都可以看到开闭原则的应用。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/12639375/viewspace-151143/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/12639375/viewspace-151143/

你可能感兴趣的文章
LuoGu P2002 消息扩散
查看>>
linux 下安装JDK
查看>>
简单的ASP.NET无刷新分页
查看>>
宏定义学习
查看>>
omitting directory `folder/'
查看>>
JavaScript面试题
查看>>
TCollector
查看>>
我的博客网站开发6——博文关键字搜索
查看>>
vim7.1在windows下的编码设置[转]
查看>>
同步器之Exchanger
查看>>
IO流
查看>>
专家观点:即使在云中 硬件同样至关重要
查看>>
loadrunner11录制不成功解决方法(收集)
查看>>
jQuery 基础
查看>>
USE平台构件属性无法显示的一种解决办法
查看>>
齐次坐标
查看>>
[SQLite]使用记录
查看>>
HttpRequest 类
查看>>
Qt使用信号与槽时出现的错误“Incompatible sender/receiver arguments”
查看>>
MYSQL:基础——触发器
查看>>