软件工程模型与方法 10、面向对象设计

软件工程模型与方法 10、面向对象设计

ID:43816212

大小:1.33 MB

页数:65页

时间:2019-10-15

软件工程模型与方法 10、面向对象设计_第1页
软件工程模型与方法 10、面向对象设计_第2页
软件工程模型与方法 10、面向对象设计_第3页
软件工程模型与方法 10、面向对象设计_第4页
软件工程模型与方法 10、面向对象设计_第5页
资源描述:

《软件工程模型与方法 10、面向对象设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第十章面向对象设计修佳鹏软件工程模型与方法 Models&MethodsofSoftwareEngineering本章内容10.1面向对象设计综述10.2模型的层次化10.3面向对象设计原则10.4设计用例实现方案10.1面向对象设计综述面向对象的设计就是在OOA模型基础上运用面向对象方法进行系统设计,目标是产生一个符合具体实现条件的面向对象设计(OOD)模型。与实现条件有关的因素有:图形用户界面、硬件、操作系统、网络、数据库管理系统、编程语言和可复用的类库等。OOD的成果是以UML包图等表示的软件体系结构、以交互图和类图表

2、示的用例实现、针对复杂对象的状态图和用以描述流程化处理过程的活动图等。面向对象的设计过程10.2模型的层次化10.2.1用户界面层10.2.2控制器/处理层10.2.3业务/领域层10.2.4持久化层10.2.5系统层层次化模型用户界面类实现了系统的主要用户界面元素。业务/领域类实现与业务领域相关的概念,源于领域模型。控制器/处理类作为完成用例任务的责任承担者,用于协调、控制其他类共同完成用例规定的功能或行为。持久类把永久存储、检索、更新和删除对象的能力封装起来,使底层的存储技术不暴露出来。系统类为应用提供操作系统相关的功能

3、,通过把特定于操作系统的特性包装起来,使软件与操作系统分离,增加应用的可移植性。10.2.1用户界面层用户界面层指与用户进行交互的部分,包含应用程序中用户界面部分的代码。系统与用户的用户界面可以以多种形式出现:图形用户界面GUI命令行界面其他交互界面(语音等)尽量将用户界面层与系统的业务逻辑分离离,专门处理系统与用户的交互。用户与系统的交互方式发生变化,系统的基本业务逻辑不需改变;系统业务逻辑变化,在交互内容不变的情况下,用户界面不需要进行改变。10.2.2控制器/处理层当用户通过用户界面使用系统时,用户界面类会产生系统事件

4、传递给控制器类,后者负责该系统事件的处理。在系统事件的处理过程中,控制器类可能会调用领域类、系统类甚至其他的控制器类。10.2.3业务/领域层在面向对象分析阶段,已经识别出了问题域中重要的概念,该阶段关注的是概念的本质含义以及属性。在面向对象设计阶段,将会对这些概念增加操作,并进行必要的修改和调整,使之成为设计模型中业务/领域层中的类。这也是为什么说OOA和OOD采用一致的表示法,OOA和OOD之间不存在结构化方法中分析与设计的鸿沟,两者能够紧密衔接。10.2.4持久化层对象持久化:将对象状态永久保存到物理存储介质中。持久化

5、层提供了存储、检索、更新和删除对象的基础结构。持久层封装对永久存储介质的访问,但其本身并不是永久存储机制。例如,持久层可能封装了对关系数据库的访问,但本身不是数据库,而是完成持久化功能的类的集合。为何引入持久化类引入持久层的目的在于当数据存储机制或策略发生变化的时候,能减少维护工作。目前大部分系统都是采用数据库作为存储介质。但数据库肯定会改变,包括:数据库升级从一种数据库移动到另一种数据库数据模式变化,如增加字段、修改字段名称、改变字段类型等持久层将对数据库的操作类封装起来,提供专门数据管理功能,向业务/领域对象提供持久化服

6、务,从而使数据库变化对业务领域的影响的范围局部化。无论持久存储策略如何变化,业务/领域类都不会受影响,从而增加了应用程序的可维护性、可扩展性和可移植性。10.2.5系统层系统层提供对操作系统和非面向对象资源的访问。系统类将操作系统提供的系统调用封装起来,生成系统访问类,例如Java语言中的文件流类库。上层业务逻辑直接访问系统类。而不直接访问系统调用。这样当程序需要在不同操作系统平台上进行移植时,只需要修改少数系统类就可以了。10.3面向对象设计原则10.3.1单一职责原则SRP(SingleResponsibilityPri

7、nciple)10.3.2开闭原则OCP(OpenClosedPrinciple)10.3.3里氏替换原则LSP(LiskovSubstitutionPrinciple)10.3.4依赖倒置原则DIP(DependencyInversionPrinciple)10.3.5接口隔离原则ISP(InterfaceSegregationPrinciple)10.3.6组合/聚合复用原则(Composite/AggregationReusePrinciple,CARP)10.3.7迪米特法则(LawofDemeter,LoD)10.

8、3.1单一职责原则SRP(SingleResponsibilityPrinciple)就一个类而言,应该仅有一个引起它变化的原因。职责定义为“变化的原因”。如果你能够想到多于一个的原因去改变一个类,那么这个类就具有多于一个的职责。类承担了多个职责,等于这些职责都耦合在了一起。一个职责的变化

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

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

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