[转]OOD和传统方法有什么区别?

原创 2005年05月31日 21:17:00

OOD和传统方法有什么区别?

还记得结构化设计方法吗?程序被划分成许多个模块,这些模块被组织成一个树型结构。这棵树的根就是主模块,叶子就是工具模块和最低级的功能模块。同时,这棵树也表示调用结构:每个模块都调用自己的直接下级模块,并被自己的直接上级模块调用。

那么,哪个模块负责收集应用程序最重要的那些策略?当然是最顶端的那些。在底下的那些模块只管实现最小的细节,最顶端的模块关心规模最大的问题。所以,在这个体系结构中越靠上,概念的抽象层次就越高,也越接近问题领域;体系结构中位置越低,概念就越接近细节,与问题领域的关系就越少,而与解决方案领域的关系就越多。

但是,由于上方的模块需要调用下方的模块,所以这些上方的模块就依赖于下方的细节。换句话说,与问题领域相关的抽象要依赖于与问题领域无关的细节!这也就是说,当实现细节发生变化时,抽象也会受到影响。而且,如果我们想复用某一个抽象的话,就必须把它依赖的细节都一起拖过去。

而在OOD中,我们希望倒转这种依赖关系:我们创建的抽象不依赖于任何细节,而细节则高度依赖于上面的抽象。这种依赖关系的倒转正是OOD和传统技术之间根本的差异,也正是OOD思想的精华所在。

FDTD 传统方法

  • 2014年05月19日 11:10
  • 2.53MB
  • 下载

【从传统方法到深度学习】图像分类

Kaggle上有一个图像分类比赛Digit Recognizer,数据集是大名鼎鼎的MNIST——图片是已分割 (image segmented)过的28*28的灰度图,手写数字部分对应的是0~255...

摄像机标定的传统方法

  • 2013年04月01日 21:18
  • 107KB
  • 下载

Linq与传统方法对比、遍历文件示例

本专题概要: Linq是什么使用Linq的好处在哪里Linq的实际操作例子——使用Linq遍历文件目录小结  引言:    终于到了C# 3中最重要特性的介绍了,可以说之前所有介绍的特性都是为了...

C# MVC 传统方法实现功能

Index.cshtml @{ Layout = null; } Index function DoDelete(Student...

AI:PR的数学表示-传统方法PR

在图像处理PR领域,相对于ANN方法,其他的方法一般称为传统方法。在结构上,几乎所有的PR方法都是可解释的。而在规则和语义上,ANN方法一般是无法解释的,称之为PR的语义黑箱。 对于图像处理IP来说,...

传统方法带宽综合方法仿真

  • 2017年11月17日 19:22
  • 4.26MB
  • 下载

好记性不如烂笔头82-spring3学习(3)-spring的Resource使用和传统方法的对比

部分文字和说明来自网上ResourceLoader接口,用于返回Resource对象;其实现可以看作是一个生产Resource的工厂类 核心方法: #Resource getResource(S...
  • ffm83
  • ffm83
  • 2015年03月18日 12:15
  • 449

ReentrantLock在JDK中的使用,以及与传统方法的对比(ArrayBlockingQueue源码分析)

先说说ReentrantLock与传统的有锁编程方法的区别,再来看ArrayBlockingQueue中是怎么使用ReentrantLock的   1.ReentrantLock可以实现公平锁和非...
  • reao123
  • reao123
  • 2017年05月01日 16:46
  • 127
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:[转]OOD和传统方法有什么区别?
举报原因:
原因补充:

(最多只允许输入30个字)