【软件工程7.21】知识点详解 软件工程是一个涵盖了从需求分析到系统实现的全过程。在这个过程中,从对象导向分析(OOA)到对象导向设计(OOD)是一个逐步细化和扩展模型的过程。分析模型主要关注用户可见的问题,抽象级别相对较高,而设计模型则更加注重技术细节,用于指导实现,其抽象级别相对较低。分析和设计的界限往往是模糊的,两者之间会有多次反复迭代。 在面向对象设计中,弱耦合和强内聚是重要的原则。弱耦合意味着对象之间的交互应尽可能松散,减少消息传递中的参数数量和复杂度,以及减少消息的数量。而强内聚则要求类或服务具有单一职责,确保它们只完成一个功能。例如,在电梯系统的设计中,Elevator Controller类应负责检查和控制电梯按钮的状态,体现职责驱动设计。 继承耦合与交互耦合相反,鼓励基类和派生类之间的紧密联系,因为通过继承关系结合的类可以构成更大粒度的模块。在电梯系统中,可能有一个基类Button,而Elevator Button和Floor Button是其派生类,它们继承并扩展了基类的功能。 为了提高可重用性,设计阶段就应考虑重用现有类和设计未来可复用的新类。例如,电梯系统中可能会复用到通用的Button类,同时,设计Elevator Controller时,应使其接口易于被其他组件使用,以便在未来项目中能复用。 设计模型包含了多个维度,如数据设计、体系结构设计、接口设计、构件级设计和部署级设计。在数据设计阶段,我们需要确定类的属性格式、方法以及信息隐藏策略,确保类的属性是私有的,并且操作都在类内部实现。职责分配是设计的关键,例如,电梯系统中,Elevator Controller需要发送消息给Elevator Button来检查其是否开启,控制电梯的运行。 电梯系统实例展示了如何将这些理论应用于实践。在这个例子中,我们有Button类、Elevator Button类、Floor Button类、Elevator Controller类、Floor Controller类、Sensor类、Elevator类、Elevator Doors类、Scheduler类等。每个类都有明确的职责,如Elevator Controller负责控制电梯按钮的开关状态,并与Elevator Door、Sensor和Elevator通信,协同工作以满足用户的电梯需求。 总结来说,软件工程7.21的知识点主要包括:面向对象分析与设计的迭代过程、弱耦合与强内聚的原则、继承耦合、重用性设计、设计模型的各个层次以及电梯系统实例中的类职责分配。这些知识点为构建高效、可维护和可扩展的软件提供了基础。
剩余22页未读,继续阅读
- 粉丝: 30
- 资源: 305
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
评论0