对OOD/OOP有较深的理解

最近,经常有很多人在求职的时候遇到这样一个问题 “对OOD/OOP有较深的理解” ,那OOD,OOP又是什么?那今天就来讲讲它们都是些什么,又如何去回答!

(1)OOA (Object oriented analysis)- 面向对象分析

面向对象分析方法是确定需求或者业务的角度,按照面向对象的思想来分析业务。例如:OOA只是对需求中描述的问题,进行模块化的处理,描述问题的本质,区别每个问题的不同点相同点,确定问题中的对象。OOA与结构化分析有较大的区别。OOA所强调的是在系统调查资料的基础上,针对OO方法所需要的素材进行的归类分析和整理,而不是对管理业务现状和方法的分析。

面向对象分析是一种分析方法。

(2)OOD(Object oriented design)- 面向对象设计

面向对象设计方法是OO方法中一个中间过渡环节。其主要作用是对OOA分析的结果作进一步的规范化整理,以便能够被OOP直接接受。

面向对象设计是一种设计方法,包括面向对象分解的过程和一种表示法,这种表示法用于展现被设计系统的逻辑模型和物理模型、静态模型和动态模型。

  这里定义两个要点:

    1)面向对象设计导致了面向对象分解;

    2)面向对象设计使用了不同的表示法来表达逻辑设计(类和对象结构)和物理设计(模块和处理架构)的不同模型,以及系统的静态和动态特征。

(3)OOP(Object oriented programming)- 面向对象编程

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

面向对象编程是一种实现的方法,在这种方法中,程序被组织成许多组互相协作的对象,每个对象代表某个类的一个实例,而类则属于一个通过继承关系形成的层次结构。

面向对象编程技术的关键性观念是它将数据及对数据的操作行为放在一起,作为一个相互依存、不可分割的整体——对象。对于相同类型的对象进行分类、抽象后,得出共同的特征而形成了类。面向对象编程就是定义这些类。类是描述相同类型的对象集合。类定义好之后将作为数据类型用于创建类的对象。程序的执行表现为一组对象之间的交互通信。对象之间通过公共接口进行通信,从而完成系统功能。

  这里定义有三个要点:

    1)利用对象作为面向对象编程的基本逻辑构建块,而不是利用算法;

    2)每个对象都是某个类的一个实例;

    3)类与类之间可以通过继承等关系联系在一起。

(4)关系

它们之间的关系基本上,面向对象分析的结果可以作为开始面向对象设计的模型,面向对象的设计结果可以作为蓝图,利用面向对象编程方法最终实现一个系统。

你可能感兴趣的:(对OOD/OOP有较深的理解)