软件设计模式与体系结构 课后练习1

习题如下:

     软件设计模式与体系结构 课后练习1

软件设计模式与体系结构 课后练习1

解:第一题

  1. 画出该模式的设计类图:

 

如图1所示:

软件设计模式与体系结构 课后练习1

                           图1 设计类图

2.  解释为什么自己的设计符合开闭原则?

答:因为设计的类、模块和函数对扩展开放,对修改关闭.即可以通过扩展来实现变化,而不是通过修改已有的代码来实现变化.具体为通过接口或抽象类约束扩展,对扩展进行边界限定,并且不会出现在接口或抽象类中不存在的public方法,参数类型、引用对象使用的接口或抽象类,而不是实现类,抽象层保持稳定,一旦确定不允许修改接口或抽象类一旦定义,应立即执行,不能有修改接口的想法,除非是彻底的大返工。

软件设计模式与体系结构 课后练习1

软件设计模式与体系结构 课后练习1

解第二题

 

1.为什么要使用策略模式?

答:因为此软件有多种优惠收费包,不同的收费包有不同的计算方式,所以也就是说有多个条件,每个条件都要进行判断,相当于每个if条件都可以理解为一个策略,此正符合策略模式定义(即把算法的责任和算法本身分割开来,委派给不同的对象管理,最终实现解决多重if判断问题。)

2.画出该模式的设计类图:

如图2所示:

软件设计模式与体系结构 课后练习1

                                                                                  图2 设计类图

3.解释为什么自己的设计符合开闭原则?

答:因为设计的类、模块和函数对扩展开放,对修改关闭.即可以通过扩展来实现变化,而不是通过修改已有的代码来实现变化.具体为通过接口或抽象类约束扩展,对扩展进行边界限定,并且不会出现在接口或抽象类中不存在的public方法,参数类型、引用对象使用的接口或抽象类,而不是实现类,抽象层保持稳定,一旦确定不允许修改接口或抽象类一旦定义,应立即执行,不能有修改接口的想法,除非是彻底的大返工。

 

 

相关文章:

  • 2021-12-02
  • 2021-08-28
  • 2021-05-16
  • 2021-04-22
  • 2021-09-23
  • 2021-04-30
  • 2021-04-16
猜你喜欢
  • 2021-10-07
  • 2021-12-18
  • 2021-11-27
  • 2021-12-12
  • 2021-12-14
  • 2021-07-23
  • 2021-09-18
相关资源
相似解决方案