OOA-->OOD-->OOP

一、OOA全称:Object Oriented Analysis   既面向对象分析

       定义:在一个系统开发过程中进行了系统业务调查以后,使用面向对象的思想进行问题分析。 OOA所强调的是在系统调查资料的基础上,针对OO方法所需要的素材进行的归类分析和整理,而不是对管理业务现状和方法的分析。

       OOA模型由5个层次(主题层、对象类层、结构层、属性层和服务层)和5个活动(标识对象类、标识结构、定义主题、定义属性和定义服务)组成。在这种方法中定义了两种对象类的结构,一种称为分类结构,一种结构称为组装结构。分类结构就是所谓的一般与特殊的关系。组织结构则反映了对象之间的整体与部分的关系。

      OOA在定义属性的同时,要识别实例连接。实例连接是一个实例与另一个实例的连接关系。

      OOA在定义服务的同时,要识别消息连接。当一个对象向另一个对象发送消息时,他们之间就存在消息连接。

      OOA的三大分析模型:

                1、对象模型:对用例模型进行分析,把系统分解成互相协作的分析类 ,通过类图/对象图描述对 象/对象的属性/对象的关系,是静态模型。

                2、动态模型:描述系统的动态行为,通过时序图/协作图描述对象的交互,以揭示对象间如何协作来完成每个具体的实例, 单个对象的状态变化/动态行为可以通过状态图来表达

                3、功能模型(即用例模型作为输入)。

二、OOD 英文全称Object Oriented Design  即面向对象设计

       定义:OOD是一种软件设计方法,是一种工程化规范。是对OOA分析的结果作进一步的规范化整理,以便于OOP能直接接受。

       OOD是一种解决软件问题的设计范式(paradigm),一种抽象的范式。使用OOD这种设计范式,我们可以用对象(object)来表现问题领域(problem domain)的实体,每个对象都有相应的状态和行为。我们刚才说到:OOD是一种抽象的范式。抽象可以分成很多层次,从非常概括的到非常特殊的都有,而对象可能处于任何一个抽象层次上。另外,彼此不同但又互有关联的对象可以共同构成抽象:只要这些对象之间有相似性,就可以把它们当成同一类的对象来处理。

       特点: OO方法以对象为基础,利用特定的软件工具直接完成从对象客体的描述到软件结构之间的转换。这是OO方法最主要的特点和成就。OO方法的应用解决了传统结构化开发方法中客观世界描述工具与软件结构的不一致性问题,缩短了开发周期,解决了从分析和设计到软件模块结构之间多次转换映射的繁杂过程,是一种很有发展前途的系统开发方法 。

三、OOP英文全称 Object Oriented Programming 一般译为面向对象编程(或面向对象程序设计)

       定义:OOP是一种计算机编程架构,它的一条基本原则是计算机程序是由单个能够起到子程序作用的单元或对象组合而成。

      OOP的特征

      封装:也称信息封装,确保组件不会以不可预期的方式改变其他组件的内部状态;只有那些提供了内部状态改变方法的组件中,才可以访问其内部状态。每个组件都提供了一个与其他组件联系的接口,并规定了其它组件进行调用的方法。

      继承:允许在现存的组件(类)基础上创建子类组件,这统一并增强了多态性和封装性。典型的来说就是用类来对组件进行分组,而且还可以定义新类为现存的类进行扩展,这样就可以使类组织成树形结构或网型结构,这体现出了动作的通用性,提高了代码复用的可能性。

      多态: 组件的引用和类集会涉及到其它许多不同类型的组件,而且引用组件所产生的结果得依据实际调用的类型。

      抽象: 程序有能力忽略正在处理中信息的某些方面,即对信息主要方面关注的能力。

 

转载,忘记原地址了

转载于:https://my.oschina.net/issume/blog/3093873

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值