主题

命名接口到页首

  • 命名接口,以反映它在系统中担当的角色。
  • 名称应简短,1 到 2 个单词。
  • 名称中不要包含单词“interface”,因为它已暗指模型元素的类型(例如 interface

描述接口 到页首

  • 描述应表达接口的职责。
  • 描述的长度应是几句话,最长可为一小段。
  • 描述不应只是重述一遍接口的名称,而应说明接口在系统中担当的角色。

定义操作到页首

  • 操作名称应反映操作的结果。
  • 当操作设置获取信息时,在操作的名称中包含 setget 就属于多余了。 应对操作和正被设置或检索的模型元素的属性赋予相同的名称。这样命名的操作,如果不带参数,则检索属性;这样命名的操作,如果参数,则设置属性。

示例

name() 返回对象的名称;name(aString) 将对象的名称设置为 aString

  • 操作的描述应描述操作做什么,包括任何主要算法以及它返回什么值
  • 操作参数的命名应指示正将何种信息传递给操作。
  • 标识参数的类型

记录接口 到页首

由接口定义的行为被指定为一组操作。可能需要传达其它信息:

  • 如何使用操作,以及这些操作的执行顺序(用示例序列图说明)。
  • 实现该接口的模型元素可能处在的、外部可观察到的可能状态(由状态机说明,请参阅指南:状态表图)。
  • 测试计划和脚本,它们测试任何实现该接口的模型元素的行为。

为了分组和管理这些信息,应创建一个包,来包含该接口和所有相关工件。

提示与技巧 到页首

每个接口代表系统中的一条“接缝”:系统可以在该处“分开”并重新构建或重新设计。接口代表了规范与设计或实施的分离。 构造良好的接口应:

  • 简单却又完整,提供所有必要的操作,却又足以指定单项服务
  • 可理解,提供的信息足以使用和实现接口,而不必检查现有用法或实施
  • 易使用,提供信息以指导用户利用接口的主要属性,而不需要深入了解操作的细节

当您绘制接口时,

  • 在您只需指定系统中存在缝时,使用“棒棒糖”表示法。最常见的情况是,您需要将此用于子系统而不是用于类。
  • 在您需要表示服务本身的详细信息时,使用扩展的“类”表示法。最常见的情况是,您需要将此用于指定包或子系统提供的服务。


Rational Unified Process   2003.06.15