软件工程 — 面向对象技术

 

 

什么是面向对象:

“面向对象=对象+类+集成+通信”

*如果一个软件系统是使用这样4个概念设计和实现的,则我们认为这个软件系统是面向对象的。

1.对象(object):

* 是用来描述系统中的客观事物实体,由属性,操作组成。

* 对象是面向对象开发模式的基本成本

*每个对象可用它本身的一组属性和它可以执行的一组操作来 定义。

* 属性一般只能通过执行对象的操作来改变

 

1. 消息:

是一个对象与另一个对象的通信单元,就叫消息。

 

2. 类:

是一组具有相同数据结构和相同操作的对象集合;累的定义包括一组数据属性和在数据上的一组合法操作。

 

4:继承:

* 集成是使用已存在的定义作为基础建立新定义的技术。

* 新类的定义可以是既存类所声明的数据和新类所增加的声明的组合.

 

面对对象的开发过程:

* 面对对象方法改进了在生存期的各个阶段的接口,因为在生 存期各个阶段开发出来的部件都是类。

* 在面向对象生存期的各个阶段对各个类的信息进行细化,类成为分析,设计和实现的基本单元。

 

论域分析(阶段):

1:论域分析开发问题论语的模型

2:考察问题论域内的一个较宽的范围,分析覆盖的范围应比直接解决问题更多。

3:建立大致的系统实现环境。

 

应用分析:

* 应用分析则根据特定应用的需求论域进行分析。

 

类的定义:

*一旦定义了一个类,就给出了它的规格说明,其中包括类的实例操作和它们的数据表示。

* 对每一个,无论是在哪一个阶段标识的类都是如此

* 类的规格说明定义了是假于对象的

* 对每一个,无论是在哪一个阶段标识的类都是如此

* 类的规格说明定义了是假于对象的数据存储上的的一组操作。

 

类的实现:

* 通过变量的生命,操作界面的实现及支持界面操作的函数的实现,可实现一个类的预期行为和状态。

* 实现是与 语言有关的。一个好的面向对象语言应当分离共有界面与其内部实现。

 

类的测试:

* 如果累的定义提供的界面比较狭窄,那么穷举测试就有可能实现。

* 累的测试在最抽象的层次开始,沿集成关系继续向下进行。

* 已经测试过的部分不需要从新测试。

 

对象模型化技术OMT:

* 对象模型化技术 把分析时收集到的信息构造在三大类中,即:

(1)对象模型:三个模型中最重要的一个模型,作用就是描述系统的静态结构,包括构成系统的类和对象,他们的属性和操作,及他们之间的关系。

(2)功能模型:由一个状态和时间的网络,侧重于描述每一类对象的动态行为;由多个数据流图组成,它们指明从外部输入,通过操作和内部存储,知道外部输出,这整个的数据流情况

(3)动态模型动态模型着重于系统的控制逻辑;包括状态图和时间追踪图。由多个状态图组成;各个状态图并发执行,并可以独立的改变状态。

这个模型化的国臣更是一个迭代过程(个人理解也是一个循环过程)。

(4)事件:

* 一个时间发生哎某一时刻

* 每个时间都是独立发生的

* 我们建立时间类,并给每个事件一个名字,以指明共同结构和行为

* 事件从一个对象向另一个对象传送信息。

 

Coad 与 Yourdon面向对象分析:

OOA有两个任务

(1)形式地说明我们所面对的应用问题,最终成为软件系统基本构成的对象,还有系统宫缩必须遵从的,由应用环境 多决定的规则和约束。

(2)明确的规定构成系统的对象如何协同合作,完成制定的功能。

*构造OOA概念模型的层次:由五个层次构成,这五个层次是分析过程中的层次;

五个层次分别是:

(1)类与对象

(2)属性

(3)服务

(4)结构

(5)主题

 

类:

也可以像对象一样来定义,是一组具有相同特征和相同属性,就形成了类;类中的所有对象都应该遵循类的定义。

* 也包括一组数据属性和在数据上的一组合法操作。

 

继承:

* 继承的概念就很好理解了,就是使用已经存在的定义作为基础从而建立起新定义的技术。

* 新类的定义可以是既存类所声明的数据和心类所增加的声明的组合;新类也可以叫做派生类,派生类也是子类,

继承定义:特殊类的对象拥有一般类的全部属性与服务,又称作特殊对一般类的继承。
   继承的层次:

(1)在类的继承层次中,Quadrilateral(四边形)的实际参数可以替换Polygon(多边形)的形式参数。

(2)类Quadrilateral的界面与类Polygon的界面是相容的。

(3)Quqdrilateral的界面可相应Polygon界面的所有消息。

上述三点就是继承带来的好处。

 以上就是我给大家总结的 “面向对象” 知识总结

 

          小白水平,如有不对,请多多指教!

 

猜你喜欢

转载自blog.csdn.net/M_hcCSDN/article/details/87557497
今日推荐