UML和模式应用学习笔记-1(面向对象分析和设计)

大学时曾经开过《UML和模式应用》的课程,当时没有引起足够的重视,只为了应付考试并没有真正掌握书中的内容;现在工作中经常要用到UML及设计模式,决定每周花点时间重新对书中的内容进行学习;本文章是对面向对象分析和设计内容进行简单的记录;

1:什么是分析和设计

分析:强调的是对问题和需求的调查研究,而不是解决方案。

设计:强调的是满足需求的概念上的解决方案(在软件方面和硬件方面),而不是其实现;

有益的分析和设计可以概括为:做正确的事(分析)和正确地做事(设计)

2:什么是面向对象的分析和设计

面向对象分析:强调的是在问题领域内发现和描述对象(或概念)。例如航班信息系统里包括飞机(Plane)、航班(Flight)、飞行员(Pilot)等概念;

面向对象设计:强调的是定义软件对象以及它们如何协作以实现需求。对应对象的属性及方法;

3:简单示例:(骰子游戏)

示例的内容:软件模拟游戏者掷两个骰子,如果总点数是7则赢得游戏,否则为输

此时我们要将其为分四个步骤进行:

(1)定义用例的:用例不是面向对象的制品,而只是对情节的记录;此处的用例场景为:游戏者请求掷骰子。系统展示结果:如果骰子的总点数是7,则游戏者赢得游戏,否则为输

(2)定义领域模型:在领域模型中展示重要的领域概念和对象,领域模型并不是对软件对象的描述,它使真实世界领域中的概念和想象可视化;因此它也被称为概念对象模型;

(3)定义交互图:面向对象设计关注软件对象的定义--它们的职责和协作;顺序图是描述协作的常见表示法,它展示出软件对象之间的消息流,和由消息引起的方法调用。

(4)定义设计类图:设计类图有效地表示类的静态视图,这样可以描述类的属性和方法;与领域模型表示的是真实世界的类,设计类图表示的是软件类。下图实例的部分类

感谢您的阅读,附件是本人关于此文UML的Visio源文件,只为练习自个画图的能力,若有错误或者不足欢迎指正;[附件下载]

原文地址:https://www.cnblogs.com/wujy/p/3391308.html