7面向对象设计(本科)5对象基础很不错的教材.ppt

7面向对象设计(本科)5对象基础很不错的教材.ppt

  1. 1、本文档共73页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第7章 面向对象设计 4学时 引言 第7章 面向对象设计 1)面向对象设计方法和步骤 2)面向对象设计的概念 3)面向对象设计规格说明书的主要内容 7.1 面向对象设计的概念 面向对象设计强调定义软件对象,并且使这些软件对象相互协作来满足用户需求。 面向对象分析和设计的界限是模糊的,从面向对象分析到面向对象设计是一个逐渐扩充模型的过程。分析的结果通过细化直接生成设计结果,在设计过程中逐步加深对需求的理解,从而进一步完善需求分析的结果。 分析和设计活动是一个反复迭代的过程。 面向对象方法学在概念和表示方法上的一致性,保证了各个开发阶段之间的平滑性。 面向对象设计的层次 高层设计:确定系统总体结构和风格,构造系统的物理模型,将系统划分成不同的子系统。 中层设计:对每个用例进行设计,规划实现用例功能的关键类,确定类之间的关系。 进行底层设计:对每个类进行详细设计,设计类的属性和操作,优化类之间的关系。 补充实现非功能性需求所需要的类。 面向对象设计与结构化设计的过程和方法完全不同,要设计出高质量的软件系统,记住: 对接口进行设计 发现变化并且封装它 先考虑聚合然后考虑继承 强内聚 类内聚——设计类的原则是一个类的属性和操作全部都是完成某个任务所必须的,其中不包括无用的属性和操作。 例如设计一个平衡二叉树类,该类的目的就是要解决平衡二叉树的访问,其中所有的属性和操作都与解决这个问题相关,其他无关的属性和操作在这里都是垃圾,应该清除。 弱耦合 在面向对象设计中,耦合主要指不同对象之间相互关联的程度。如果一个对象过多地依赖于其它对象来完成自己的工作,则不仅使该对象的可理解性下降,而且还会增加测试、修改的难度,同时降低了类的可重用性和可移植性。 对象不可能是完全孤立的,当两个对象必须相互联系时,应该通过类的公共接口实现耦合,不应该依赖于类的具体实现细节。 耦合(续) 交互耦合——如果对象之间的耦合是通过消息连接来实现的,则这种耦合就是交互耦合。在设计时应该尽量减少对象之间发送的消息数和消息中的参数个数,降低消息连接的复杂程度。 耦合(续) 继承耦合——继承耦合是一般化类与特殊化类之间的一种关联形式,设计时应该适当使用这种耦合。在设计时要特别认真分析一般化类与特殊化类之间继承关系,如果抽象层次不合理,可能会造成对特殊化类的修改影响到一般化类,使得系统的稳定性降低。另外,在设计时特殊化类应该尽可能多地继承和使用一般化类的属性和服务,充分利用继承的优势。 可重用性 软件重用是从设计阶段开始的,所有的设计工作都是为了使系统完成预期的任务,为了提高工作效率、减少错误、降低成本,就要充分考虑软件元素的重用性。重用性有两个方面的含义: 尽量使用已有的类,包括开发环境提供的类库和已有的相似的类; 如果确实需要创建新类,则在设计这些新类时考虑将来的可重用性。 设计一个可重用的软件比设计一个普通软件的代价要高,但是随着这些软件被重用次数的增加,分摊到它的设计和实现成本就会降低。 面向对象设计的活动 系统构架设计 用例设计 类设计 数据库设计 用户界面设计。 7.2 构架设计 构架设计的目的是要勾画出系统的总体结构,这项工作由经验丰富的构架设计师主持完成。 该活动以用例模型、分析模型为输入。 输出:物理结构、子系统及其接口、概要的设计类。 第1步:构造系统的物理模型 首先用UML的配置图描述系统的物理构架 将需求分析阶段捕获的系统功能分配到这些物理节点上。 配置图上可以显示计算节点的拓扑结构、硬件设备配置、通信路径、各个节点上运行的系统软件配置、应用软件配置。 书号实名申领信息系统的物理模型如图示 DMZ区 放置企业网站和邮件服务器的区域,防火墙的配置: 内网可以访问外网:内网的用户显然需要自由地访问外网。 内网可以访问DMZ:内网用户使用和管理DMZ中的服务器。 外网不能访问内网:很显然,内网中存放的是公司内部数据,不允许外网的用户进行访问。 外网可以访问DMZ:DMZ中的服务器本身就是要给外界提供服务的,所以外网必须可以访问DMZ。 DMZ不能访问内网:如果违背此策略,当入侵者攻陷DMZ时,就可进攻到内网的重要数据。 ? 图有4个区:DMZ区的两个服务器主要是用于运行集团网站。 内部用户区是为集团内部局域网用户服务的。 用户学习和测试区有两个目的,一是为使用系统的初级用户有一个实际操练的环境,学习系统的应用环境与真实系统完全一样,只是数据库的数据都是练习数据;第二个目的是为了新版本正式上线前提供一个测试环境,因为业务系统在使用过程中经常会有变更,很容易引入错误和问题,为了确保业务的正确执行,需要对系统的新版本进行大量逼真的运行测试。 网闸隔离区内部署了正式系统,三台应用服务器负责全国所有的用户业务,它们的负载均衡由流量分配器实现;两台数据库服务器

文档评论(0)

junjun37473 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档