加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

一、 "开放-封闭"原则(OCP)

发布时间:2020-12-15 04:39:09 所属栏目:百科 来源:网络整理
导读:?软件腐化的原因: p style="FONT-SIZE: 10pt"问题所在?? 设计目标----------------------------------------------------------------------------过于僵硬?? 可扩展性(新性能可以很容易加入系统)过于脆弱?? 灵活性(修改不会波及其它)复用率低?? 粘度过

?软件腐化的原因:
<p style="FONT-SIZE: 10pt">问题所在?? 设计目标----------------------------------------------------------------------------过于僵硬?? 可扩展性(新性能可以很容易加入系统)过于脆弱?? 灵活性(修改不会波及其它)复用率低?? 粘度过高?? 可插入性(新功能容易加入系统(气囊加入方向盘))


<p style="FONT-SIZE: 10pt"> 提高系统可复用性的几点原则:传统复用:1. 代码的粘帖复用2. 算法的复用3. 数据结构的复用


<p style="FONT-SIZE: 10pt">
可维护性与可复用性并不完全一致


<p style="FONT-SIZE: 10pt">* 对可维护性的支持:

一、 "开放-封闭"原则(OCP)

二、 里氏代换原则(LSP)

=?r.getWidth()?)


= r.getWidth() 改为r.getHeight() > r.getWidth() 。这样就不会出现死循环了,而且我认为也应该是合理的,不知道是不是应该这样,还请吕兄赐教。???? ??
= r.getWidth() 改为r.getHeight() > r.getWidth() ”,那么在系统中加入正方形类后代码中所有长方形相关的代码都会受影响,这不正是失去了抽象的意义了吗?这样正好违反了LSP原则 !???? ??
中有详细说明,大家可以去看看。 再举一个鸭嘴兽的例子,假如浦乳动物的约束是:恒温,喂奶,那么鸭嘴兽可以是浦乳动物的子类,但要是再加一个约束:必须是胎生,那么鸭嘴兽就不可做浦乳动物的子类,目前动物学术界基本上认为鸭嘴兽属于浦乳动物。???? ??
= rectangle.getSide2() ) { rectangle.setSide2(rectangle.getSide2() + 1); } System.out.println("rectangle:"); System.out.println(rectangle.getSide1()); System.out.println(rectangle.getSide2()); System.out.println(); } } 我传入的矩形是一个正方形,结果也没什么死循环啊。???? ??

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读