UML期末复习题——2.8:UML Design Class Diagram(DCD)
第八题:设计类图

重要概念:
1. 类图(Class Diagram): 类图是面向对象系统建模中最常用和最重要的图,是定义其它图的基础。类图主要是用来显示系统中的类、接口以及它们之间的静态结构和关系的一种静态模型。UML用类图表示类、接口及其关联。
2. 表示类元属性的方法:
a.属性文本:如currentSale:Sale
b.关联线表示法
c.两者兼有
属性文本表示法的完整格式:visibility name : type multiplicity = default {property-string}
关联线表示的属性:导航性箭头+多重性(放在目标一端,而不是源的一端)+角色名(只放在目标一段,用以表示属性名称)+不需要关联名称
准则:通常对数据类型对象使用属性文本表示法,对其他对象使用关联线。
3.关联端点的描述法
关联的端点可以附加导航性箭头,也可包含可选的角色名(关联端点名)来表示属性名称。
关联端点还可以附加多重性值。
关联端点还可以使用{ordered}、{ordered、list}这样的特殊字符串。
4.对象之间的关系






接口是一种特殊的类,具有类的结构但不可被实例化,只可以被实现(继承)。UML类图中接口有两种表示方法:矩形表示法(如图-2中的飞翔的接口)和棒棒糖表示法(如图-2中唐老鸭类中实现讲人话的接口)。矩形表示法,顶端有<<接口>>或者<<interface>>,第一行:接口名称,第二行:接口方法。棒棒糖表示法,圆圈旁为接口名称,接口方法在实现类中出现,如唐老鸭类中的讲话。

5.约束
UML约束是对UML元素的限制条件。约束以花括号之间的文本表示,如{size>10}
对属性的约束条件,写在属性后面。对操作的约束,以注释或后置条件的形式写出。但是都要有{}。
绘制要点:
具体方法:http://www.cnblogs.com/riky/archive/2007/04/07/704298.html
http://www.uml.org.cn/oobject/201104212.asp
http://www.cnblogs.com/silent2012/archive/2011/09/07/2169946.html
http://developer.51cto.com/art/201007/209503.htm
实现实例:http://blog.csdn.net/flanet/article/details/7746004
根据实例来看,可以很好的理解掌握类图中需要可以熟练运用的知识点。
注意事项:
1.画图步骤
首先把顺序图里面的类抄过来。
然后查看领域模型,把领域模型里面对应这里的类的属性copy过来,然后把领域模型里面的关联到这里变成实现。
补充类的方法。
控制器类方法的数量只能与前面的系统事件数量一样,系统事件有多少个就只能写多少个方法。
1) 前面的has,own这种关联不能留下来,如果留下来,扣分,应把概念类图中的关联改为有箭头没文字(或有在关联端点有文字)的表示
2) 多重性要保持
3) 不要写什么set方法、get方法,这是编程的问题,不是这里的问题
2.一定要与交互图一一对应
方法和对象都要一一对应!!
3.Domain中先把除了UI和Controller之外的都放进去
分别确定每个对象的属性,依赖,实现
画出domain中的各个对象之间的关系(存在的方法)
4.领域模型==》概念透视图
设计模型(DCD)==》软件透视图
试题答案:

UML期末复习题——2.8:UML Design Class Diagram(DCD)的更多相关文章
- UML期末复习题——2.5:System Sequence Diagram & Post-condition
第五题:系统顺序图 重要概念: 1.对象: 对象是特定行为与属性的集合. 对象的表示方式有三种: a.包括对象名和类名 b.只有类名. c.只有对象名 2.消息表示形式: 消息用于描述对象间交互的方式 ...
- UML期末复习题——2.1:Use Case Diagram
第一题:用例图 重要概念: 1.采用参与者和参与者目标的观点: 一组用例实例,每个实例是系统所执行的一系列活动,以此产生对特定参与者具有价值的客观结果. 短语“对特定参与者具有价值的客观结果”是细微而 ...
- UML期末复习题——2.9:UML Deployment Diagram
附加题:部署图 重要概念: 1. 部署图 部署图表示的是,如何将具体的软件制品(例如可执行文件)分配到计算节点(具有处理服务的某种事物)上.部署图表示了软件元素在物理架构上的部署,以及物理元素之间的通 ...
- UML期末复习题——2.7:UML Sequence Diagram
第七题:顺序图 重要概念: 1. 顺序图的主要介绍,在之前对第5题“系统顺序图”的解析讲解里已经很详细了,在这里只是对部分不全面的内容进行补充. 第五题:系统顺序图&后置条件 http://w ...
- UML期末复习题——2.6:Package Diagram
第六题 包图 重要概念: 1.包图(package Diagram) 由若干个包以及包之间的关系组成.包是一种分组机制,其将一些相关的类集合为一个包,形成高内聚,低耦合的类集合,可以说,一个包相当于一 ...
- UML期末复习题——2.4:Domain Model
第四题:领域模型 重要概念: 1. 领域模型:是对领域内的概念类或现实世界中对象的可视化表示.领域模型也称为概念模型,领域对象模型和分析对象模型. 2. 应用UML表示法,领域模型被描述为一组没有定义 ...
- UML期末复习题
看了网上的各种UML图的相关资料,找到的都是差不多一样的对图的基本介绍.之前复习的时候也想对不同UML图单独进行复习总结,后来发现这样复习好像没什么用,不能理解每个图之间的关系,所以就没有进一步总结. ...
- UML期末复习题——2.3:UML State Diagram
第三题 状态图 重要概念: 1.定义:事件.状态和转换: 事件:指一件值得注意的事情的发生. 状态:指对象在事件发生之间某时刻所处的情形. 转换:两个状态之间的关系.它表明当某事件发生时,对象从先前 ...
- UML期末复习题——2.2:UML Activity Diagram.
第二题:活动图 重要概念: 活动图:一种有助于使工作流和业务过程可视化的图. 绘制要点: 具体方法见:http://www.cnblogs.com/xiaolongbao-lzh/p/4591953. ...
随机推荐
- 使用url_for()时,会自动调用转换器的to_url()方法
视图反推url,在动态url(转换器)反推中的应用 # -*- coding: utf-8 -*- from flask import Flask, url_for, redirect from we ...
- 一线互联网常见的Java面试题,你颤抖了吗程序员
跳槽不算频繁,但参加过不少面试(电话面试.face to face面试),面过大/小公司.互联网/传统软件公司,面糊过(眼高手低,缺乏实战经验,挂掉),也面过人,所幸未因失败而气馁,在此过程中不断查缺 ...
- CentOS7安装CDH 第二章:CentOS7各个软件安装和启动
相关文章链接 CentOS7安装CDH 第一章:CentOS7系统安装 CentOS7安装CDH 第二章:CentOS7各个软件安装和启动 CentOS7安装CDH 第三章:CDH中的问题和解决方法 ...
- SVN版本控制—branches、trunk、tag篇
新建资源仓库时,可选择默认创建三个文件夹.这三个文件夹分别是[trunk][branches][tags] [Trunk] 一般用于存放目前项目主线,也就是项目所有功能模块的集合体,一整个项目所有代码 ...
- python获取字符串的前几个字符(包含汉字)
一个简单的字符串,比如a="小明xiaoming"或者b="小xiao明ming".想在只想得到字符串的前4个元素,a1="小明xi",b= ...
- js面向对象篇(一)
Javascript是一种基于对象(object-based)的语言,你遇到的所有东西几乎都是对象.但是,它又不是一种真正的面向对象编程(OOP)语言,因为它的语法中没有class(类). ----摘 ...
- JAVA遇见HTML——JSP篇:JavaBeans
Javabeans简介 Javabeans就是符合某种特定的规范的java类.使用Javabeans的好处是解决代码重复编写,减少代码冗余,功能区分明确,提高了代码的维护性. Javabean的设计原 ...
- mysql查询表中最后一条记录
查询全部的记录: select * from test_limit ; 查第一条记录: select * from test_limit limit 1; ...
- RHEL7-RHCE培训系列教程,让您零基础入门Linux运维
本教程是旨在帮助那些刚入门IT行业或计划从事IT行业的初学者(包括开发人员和运维人员,以及想要在Linux系统维护上提升自己的网络管理员),0基础入门Linux运维,完整学习完成本系列课程相当于培训机 ...
- mysql对两个字段进行自定义排序
Mysql order by 多字段排序 ') desc,ADD_DATE desc mysql单个字段降序排序: select * from table order by id desc; mysq ...