第10章 面向对象设计

第10章 面向对象设计

ID:37784057

大小:55.00 KB

页数:4页

时间:2019-05-31

第10章 面向对象设计_第1页
第10章 面向对象设计_第2页
第10章 面向对象设计_第3页
第10章 面向对象设计_第4页
资源描述:

《第10章 面向对象设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第10章面向对象设计第10章面向对象设计10.1软件模块之间的依赖性可以从哪些角度和抽象层次进行分析?在面向对象软件中,常见的软件模块有类、接口、包、构件。因此,分析软件模块之间的依赖性就可以从类、接口、包和构件的角度和层次进行分析。10.2消除包之间循环依赖性的方法是什么?本质上,两个包之间的依赖性来自于两个包中类之间的依赖性。类之间的循环依赖性是个特别棘手的问题,好在大多数情况下可以通过重新设计避免循环依赖性。具体方法是增加新包。举例说明如下:在下图中,包A依赖于包B,反过来包B又依赖包A,构成了循环依赖。具体解决办法是:将包B

2、依赖的包A中的元素从包A中分离出来,组成包C,使得包B不再依赖包A,而是依赖包C。10.3请给出构件的一般性定义,然后给出传统的软件工程环境及面向对象的软件工程环境中构件的定义,最后选择你熟悉的编程语言说明怎样定义一个构件。软件构件是一种组装单元,它具有规范的接口规格说明和显式的语境依赖。软件构件可以被独立部署,并由第三方任意组装。OMGUML规范中将构件定义为“系统中某一定型化的、可配置的和可替换的部件,该部件封装了实现并暴露一系列接口”。在传统的软件工程环境中,一个构件就是程序的一个功能要素,程序由处理逻辑和实现处理逻辑所需的内

3、部数据结构以及能够保证构件被调用和实现数据传递的接口构成。传统的构件也称为模块,是软件体系结构的一部分。在面向对象的软件工程环境中,面向对象技术已达到了类级复用,而构件级复用则是比类级复用更高一级的复用,它是对一组类的组合进行封装(当然,在某些情况下,一个构件可能只包含一个单独的类),并代表完成一个或多个功能的特定服务,也为用户提供了多个接口。一个构件可以是一个编译的类,可以是一组编译的类,也可以是其他独立的部署单元,如一个文本文件、一个图片、一个数据文件、一个脚本等。选择你熟悉的编程语言说明怎样定义一个构件。(略)10.4典型的面

4、向对象设计模型在逻辑上由哪几部分组成?对每一部分进行设计时所包含的主要内容是什么?典型的面向对象设计模型在逻辑上将系统划分为4个部分,分别是问题域部分、人机交互部分、任务管理部分及数据管理部分。第10章面向对象设计1)问题域部分的设计在面向对象设计过程中,可能要对面向对象分析所得出的问题域模型进行补充或调整。例如,调整需求、复用已有的类、把问题域类组合在一起、增添泛化类以建立类间的协议、调整继承的支持级别、改进性能等。2)人机交互部分的设计人机交互界面的设计质量直接影响到用户对软件的使用。在设计阶段,必须根据需求把交互细节加入到用户

5、界面设计中,包括人机交互所必需的实际显示和输入。3)任务管理部分的设计任务管理主要包括任务的选择和调整。常见的任务有事件驱动型任务、时钟驱动型任务、优先任务、关键任务和协调任务等。设计任务管理子系统时,需要确定各类任务,并将任务分配给适当的硬件或软件去执行。4)数据管理的设计在采用面向对象方法进行软件开发时,数据的存储还是普遍使用关系数据库。在面向对象设计中,可以将UML类图看作是数据库的概念模型,一个类可以映射为一个表或多个表,此外,还要考虑类之间的关联关系、继承关系的映射。10.5用面向对象方法设计网上购书系统的软件结构,网上购

6、书系统的业务如下:某书店为方便客户通过Internet购买相关图书,开发一个“网上购书系统”,客户可以通过Web页面注册并登录“网上购书系统”,通过Web页面查看、选择图书,系统根据用户选择的图书单价、数量,系统自动生成订单,并计算总价格。客户在提交订单之前,必须填写关于寄送地址和发票及付款方式等细节,一旦订单被提交,系统显示确认信息,并附上订单的详细信息。客户可以在线查询订单的状态。系统管理人员查看客户的订单,验证客户的信用和付款方式,向仓库请求所购图书,打印发票并发货。答:本系统从逻辑结构上分为三层,Web页面层,业务逻辑层和数

7、据库层。Web页面层负责接收用户的请求,业务逻辑层在获知用户请求后,执行相应的业务逻辑,向数据库层发出数据请求,获得所需要的数据后,通知Web页面层将数据呈现给用户。10.6对10.5中的网上购书系统设计其问题域的类图。问题域类包括客户类、系统管理员类、购物车类、订单类、图书类和发票类。用户分为客户和系统管理员两种,所以是泛化关系。客户和系统管理员都要对订单进行操作,所以和订单的关系是依赖关系。购物车中存放的是用户选购的图书,是聚集关系。具体见下图:第10章面向对象设计10.7一所大学下设多个系,每个系包含多个教研室和多个学生班级。

8、每位教师只能归属于一个教研室。学生分为本科生和研究生两种。每位教师可以承担多门课程的教学任务,每个学生可以选修多门课程。请根据以上问题描述画出类图。从问题描述中,可得到大学、系、教研室、学生班级、教师、学生、教学任务、课程、本科生和研

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。