[OOAD] OOD设计概述

       面向对象OOD就是运用面向对象方法进行系统设计,是OOA模型基础上运用面向对象方法,只要解决与现实有关的问题,目标是产生一个符合具体实现条件的课实现的OOD模型。与现实条件有关的只要因素有:图形用户界面系统、系统、操作系统、网络、数据管理系统和编程语言等。
      早期的OOD具有如何特点:
      1)不是基于OOA的。大多数方法都是基于结构化分析的结果进行OOD,如基于数据流图进行OOD。
      2)是OO编程方法的延伸。多数OOD方法与编程语言有关,特别是受Ada影响很大。
      3)不是纯OO的。一些方法对某些OO概念缺少支持。
      4)不是只针对软件生命周期的设计阶段。


     现金的OOD具有如下特点:
     1)以面向对象的分析为基础,一般不依赖结构化分析。
     2)与相应的OOA方法共同构成一种OOA&D方法体系。OOA和OOD采用一致的概念与原则,但属于软件生命周期的不同阶段,有不同的目标和策略。
      3)较全面地体现了面向对象方法的概念与原则。
      4)大多数OOD方法独立于编程语言,但具体应用OOD时,则要考虑特定的编程语言,因为通过面向对象的设计多得到的系统模型,要由确定的编程语言实现。

面向对象设计的模型如下:
 [OOAD] OOD设计概述_第1张图片
       从一个侧面观察OOD模型,它包括一个核心部分,即问题域部分;还包括四个外围部分,即人机交互部分、控制驱动部分、数据管理部分和构件及部署部分。初始的问题域部分即为OOA模型,要按照实现条件对其进行补充与调整;人机交互部分即为人机界面设计部分;控制驱动部分用来定义和协调并发的各个控制流;数据管理并发用来对永久对象的存取建模;构件及部署部分中的构件模型用于描述构件以及构件之间的关系,部署模型用于描述节点、节点之间的关系以及构件在节点上的分布。
从另一个侧面观察OOD模型,对于上述的部分,仍采用OOA的概念和表示法,只是在辅助模型中增加分别用于描述构件模型和部署模型的构件图和部署图。
要强调的是,将OOA搬到OOD,作为OOD模型的问题域部分,只要对它进行必要的调整和增补,而不是转换。 

你可能感兴趣的:(OOAD)