刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

简答题

在实际的软件项目开发中,采用成熟的架构风格是项目成功的保证。请阐述软件架构风格的概念以及面向对象和控制环路两种架构风格各自的特点。

使用微信搜索喵呜刷题,轻松应对考试!

答案:

【问题1】
软件架构风格是描述某一类特定应用领域中软件系统组织方式和惯用方式。
面向对象架构风格的特征是将数据表示和基本操作封装在对象中。这种模式的构件是对象,对象维护自身表示的完整性,对象之间通过消息机制进行通信,对象交互时需要知道彼此的标识,通过对象之间的协作完成计算过程。
控制环路架构风格是将过程输出的指定属性维护在一个特定的参考值(设定点)。控制环路风格包括过程变量、被控变量、输入变量、操纵变量和设定点等构件,通过收集实际和理想的过程状态信息,并能调整过程变量使得实际状态趋于理想状态。
【问题2】
对于系统的增减速功能,采用面向对象风格的巡航控制系统首先会定义司机、油门、时钟、速度计和车轮等构件。
整个计算的主要过程是:
(1)司机进行增/减速操作设置期望速度,该期望速度以消息的形式传递给速度计;
(2)速度计通过向车轮和时钟发送消息获取车轮转速和时钟值,得到当前速度;
(3)速度计计算当前速度和期望速度的速度差值;
(4)该差值以消息的形式发送给油门,油门通过速度差值调节自身状态;
(5)整个过程在时钟的控制下定期向速度计发送消息,重复执行(2)~(4)。
控制环路的架构风格以控制器为核心,期望速度、车轮脉冲、时钟和油门等作为构件。
具体的计算过程是:
(1)司机进行增/减速操作设置期望速度值;
(2)将设定值置为期望速度值;
(3)控制器采集车轮脉冲和时钟值,计算出当前速度;
(4)比较期望速度和当前速度,计算速度差值,控制油门动作;
(5)反复执行(3)和(4)。
【问题3】
适合面向对象架构风格的应用场景:
(1)用户刹车,立即退出巡航控制系统。理由:这是一个典型的事件驱动的场景,适合于面向对象风格。
(2)系统对突发事件的处理,如某些部件失灵等。理由:当发生突发事件时,系统会同时产生数据和事件,这种清况用对象建模较为恰当。
适合面向控制环路架构风格的应用场景:
(1)在达到期望速度后,系统维持恒定速度行驶。理由:这是一个典型的闭环控制的情景,系统需要在外界情况不断发生变化的情况下进行调整,使得系统状态尽可能接近期望状态。
(2)用户改变期望速度后,系统不断进行调整,直至到达恒定速度。理由:这是一个闭环控制情景,当用户设定期望速度值后,系统需要在不断获取当前速度和外界条件的情况下对系统状态持续调整,使得系统状态尽可能接近这个新的期望状态。

解析:

问题1:
软件架构风格是描述某一类特定应用领域中软件系统的组织方式和惯用方式。面向对象和控制环路是两种常见的软件架构风格。面向对象架构风格注重将数据和相关操作封装在对象中,通过对象之间的交互来完成任务。控制环路架构风格则更注重在动态环境中对系统状态的调整和控制。

问题2:
对于车辆定速巡航控制系统的增减速功能,面向对象风格的架构中,主要构件包括司机、油门、时钟、速度计和车轮等。司机通过操作设置期望速度,速度计通过车轮和时钟获取当前速度,然后计算速度差值并通知油门进行调整。而在控制环路风格的架构中,主要构件包括控制器、期望速度、车轮脉冲、时钟和油门等。控制器会收集车轮脉冲和时钟信息计算当前速度,然后与期望速度进行比较,计算速度差值并控制油门动作。

问题3:
面向对象架构风格适合处理复杂的事件和对象关系,如用户刹车立即退出巡航控制系统、系统对突发事件的处理等场景。而控制环路架构风格则更适合需要实时调整和控制系统状态的场景,如车辆定速巡航系统中维持恒定速度行驶、用户改变期望速度后的系统调整等。

创作类型:
原创

本文链接:在实际的软件项目开发中,采用成熟的架构风格是项目成功的保证。请阐述软件架构风格的概念以及面向对象和控

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share