详细设计模型——设计类图
1060字,阅读需时4分钟

设计类图是类图的一个变体,类图表示一系列的类以及它们之间的关系。因为分析阶段是一个发现需求的过程,所以我们一般很少关心类的属性和方法的细节。在面向对象设计中,类的属性有一个特征叫可见性,它表示其它类是否可以访问该属性。类的每个属性都有一个类型定义,例如字符串或数值类型。在详细设计阶段,我们需要细化这些属性,并且定义方法的名称、返回值以及传入的参数。因此,虽然分析阶段和设计阶段的类图很相似,但设计阶段的类图更完善。

下图显示了用于设计类图要使用的符号,这个类图是一个简化的版本,它仅仅显示了属性和方法标识。

image.png

 图 1 一个简单类图

类图的图形符号是一个矩形框,矩形框分为三个部分。第一部分是类名,在这里写入类的名称;第二部分是属性列表,在这里写入类的所有属性,包括属性的名称、属性的可见性和属性的类型。属性的可见性用于表示其它类是否能直接访问这些属性;第三部分是方法列表,在这里写入类的所有方法,包括方法的名称、返回值以及传入的参数。

属性列表包含了在分析阶段所发现类的所有属性。此外,还包括一些其它属性,这些属性用来表示和其它类的对象相关联的对象引用。例如,一个账号对应一个客户,客户账号类需要一个方法找到正确的客户。有两种方法可以做到这一点,一是定义一个域,可以直接引用或连接正确的客户对象,这个域叫做对象引用或对象指针;另一种方法是在客户账号类中为客户类插入一个外部码。前面的方法比较适合类之间的引用,后面的方法比较适合关系数据库表的关联。

另外补充的一个属性是状态值属性,类中加入这个属性能够维护对象所处的状态的信息。状态信息从状态图中提取并加入到方法逻辑中,这个属性就是类的状态变量。例如,用户类要保存用户是否登录系统的状态。

方法列表包含了在分析阶段所发现类的所有方法,分析阶段的类图仅给出了类的中文方法名称。在设计阶段需要用英文确定方法的名称,并给出方法的返回值和传入的参数。

图2是人脉系统名片类分析阶段的类图,图3是人脉系统名片类设计阶段的类图。

image.png

图 2 人脉系统名片分析阶段的类图

image.png

图 3 人脉系统名片设计类图

从图2和图3可以看出,分析阶段的类图主要是从业务领域获取信息的,在描述上更多使用了业务领域的语言和词汇。设计阶段的类图是从编程实现角度来设计类图的,更多的是考虑类编码的实现。图3的设计类图不仅给出了类的英文名称、类属性的可见性、类属性的英文名称、类属性的数据类型,还给出了类方法的返回值、方法的英文名称和方法的传入参数。程序员可以根据设计类图直接编写类代码,也可以使用代码自动生成软件来自动创建类代码。

 


我要评论
全部评论
郎宏林
授课老师
授课老师简介
项目经理,系统分析和架构师,从事多年中文信息处理技术。熟悉项目管理、擅长项目需求分析和设计、精通Java、C#、Python等编程语言。
下载APP

手机、电脑同步学

用微信或手机浏览器扫描二维码,即可下载APP。

  • 备案号:鲁ICP备15001146号
  • @1997-2018 潍坊米粒花网络技术有限公司版权所有