- 1、本文档共31页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《面向对象系统设计循序渐进
面向对象系统设计
循序渐进(第一版)
OOD循序渐进
作为一名软件开发人员,我深刻地体会到面向对象系统设计带来的种种便利:
良好的可复用性。开发同类项目的次数与开发新项目的时间成反比,谁也不愿做重复劳动吧 ?。
易维护。基本上不用花太大的精力跟维护人员讲解,他们可以自己读懂源程序并修改了,要不然开发的系统越多,你的负担就越重?,不是吗?。
良好的可扩充性。以前,在向一个用结构化思想设计的庞大系统中加一个功能则必须考虑兼容前面的数据结构、理顺原来的设计思路,即使客户愿意花钱修改,作为开发人员多少都有点恐惧。在向一个用面向对象思想设计的系统中加入新功能,不外乎是加入一些新的类,基本上不用修改原来的东西,这种感觉真爽?。
前 言
本书是一本介绍面向对象软件系统设计的书,从组织结构上分为两大部分:面向对象的概念与UML概述、面向对象系统设计。第一部分是基础,第二部分是核心。
本书对面向对象概念和UML语言的介绍并不是面面具到,介绍的基本上是本书需要用到的那部分内容,所有不适合作为面向对象概念或UML语言的参考手册。
阅读本书的基础
至少熟悉一种编程语言,最好熟悉的是面向对象编程语言。
对软件工程有一定的了解。
如果你只有结构化思想的开发经验,那么阅读本书后会对你有所启发。
如果你有面向对象思想的开发经验,那么就让我们一起来探讨吧。
阅读指南
如果你已经熟悉了面向对象概念,当我提到“封装”、“消息”、“对象类”等术语时,你可以不查阅资料,那么你可以跳过第一、第二章,直接阅读第三章的内容,否则你还是从头看起。
建立共同语言
为了避免在下面的讨论中因一些名称的问题而产生错误的理解,我觉得有必要先说明一下我的一些口语习惯和一些中英文名称对应关系。叙述中具体使用哪个名词或用中文还是英文,要根据具体上下文而定。如:我是计算机专业的。我买了一台手提电脑。其中计算机和电脑都是指Computer。
下面是部分中英文对照表:
英文 中文 简称 Object Oriented 面向对象 OO Object Oriented Analysis 面向对象分析 OOA Object Oriented Design 面向对象设计 OOD Object Oriented Programming 面向对象的程序设计 OOP Unified Modeling Language 统一建模语言 UML Actor 活动者 ? Use Case 用例 ? Class 对象类、类 ? Attribute 属性 Operation 操作、方法 Interface 接口 Component 组件 Package 包 Node 接点 Association 关联 Composition 组合 Aggregation 聚合 Generalization 泛化 Dependency 依赖 Realization 实现 Message 消息 State 状态 Comment 注释 目 录
OOD循序渐进 1
前 言 2
目 录 4
面向对象的概念与UML概述 5
第一章、 面向对象的概念与UML概述 5
1.1 分析与设计概述 5
1.2 面向对象的概念 7
1.3 UML概述 10
第二章、 UML语言 11
2.1 UML语言的体系结构 11
2.2 符号与图形 11
面向对象系统设计 16
第三章、 架构设计 16
3.1 架构设计原则 16
3.2 信息系统的架构设计 17
第四章、 类设计 23
4.1 类设计指南 23
4.2 通用日记帐财务系统-系统分析模型 23
4.3 通用日记帐财务系统-类图 27
第五章、 数据库设计 29
5.1 映射原则 29
5.2 映射 30
5.3 ER 图 30
第六章、 其他资料 30
面向对象的概念与UML概述
面向对象的概念与UML概述
分析与设计概述
首先来看看我们认识事物的过程:
当接触一个新事物时,就会问这个东西是干什么用的?进一步的,怎么使用呢?
改造事物的过程:
它需要改进吗?要改进什么?如何改进呢?
从接触新事物到要改进什么,可以总结为是对事物的分析。
如何改进可以总结为是对目标(改进后)事物的设计。
这个事物是一个对象。
再来看看我们开发软件的分析、设计过程:
当接触到一个系统时,首先了解当前系统提供什么服务、当前系统的服务如何操作,再分析目标系统必须提供什么服务,目标系统提供的这些服务如何操作,进而考虑如何实现这些服务(这里的实现是逻辑上的,指系统设计,程序设计是指物理上的实现)。
系统分析
系
文档评论(0)