接口设计:对象设计中的关键环节
1. 引言:从铁路系统看接口概念
以斯图加特将有轨电车系统转变为轻轨系统为例,这一转变面临诸多挑战,如轨距、站台和信号系统的不兼容问题。有轨电车轨距为1000mm,轻轨为1450mm,部分车站需安装三根轨道;有轨电车乘客从街道上车,轻轨则需抬高站台;有轨电车信号类似汽车交通灯,轻轨则类似货运列车信号。
这一例子体现了接口的概念。有轨电车就像软件对象,为客户提供服务并对环境有一定假设。轨距、车门高度和信号系统等接口属性的变化,会影响有轨电车服务的提供,直到相关系统做出调整。软件对象同样通过接口与其他对象交互,接口包含操作、参数、结果及操作行为假设,任何改变都可能影响对象功能。
2. 接口规范概述
在系统开发的这一阶段,已做出诸多决策并生成大量模型,包括分析对象模型、子系统分解、硬件/软件映射、边界用例和设计模式等。但这些模型仅反映系统部分视图,对象设计的目标是将这些信息整合为连贯精确的整体,而接口规范的目标是精确描述每个对象的接口,减少集成问题。
接口规范包括以下活动:
- 识别缺失的属性和操作 :检查子系统服务和分析对象,找出实现子系统服务所需的操作和属性,完善对象设计模型。
- 指定可见性和签名 :确定操作对其他对象和子系统的可见性,指定操作的返回类型、参数数量和类型,减少子系统间的耦合,提供简单易懂的接口。
- 指定合同 :用约束描述对象操作的行为,包括操作调用前需满足的条件和操作返回后的结果规范。
对象设计比分析或系统设计更复杂,涉及大量
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



