简答题

将面向对象方法与结构化方法进行比较。

正确答案

分析是问题抽象(做什么),设计是问题求解(怎么做),实现是问题的解(结果)。任何方法学对客观世界的抽象和求解过程都是如此。在问题抽象阶段,结构化方法面向过程,按照数据变换的过程寻找问题的结点,对问题进行分解。因此,与面向对象方法强调的对象模型不同,描述数据变换的功能模型是结构化方法的重点。如果问题世界的功能比数据更复杂或者更重要,那么结构化方法仍然应是首选的方法学。如果数据结构复杂且变换并不多,那么如以过程主导分析和设计,一旦有系统变更就会给下游开发带来极大混乱。
由于对过程的理解不同,面向过程的功能细分所分割出的功能模块有时会因人而异。而面向对象的对象细分,从同一问题领域的对象出发,不同人得出相同结论的比率较高。
在设计上,结构化方法学产生自顶向下、结构清晰的系统结构。每个模块有可能保持较强的独立性,但它往往与数据库结构相独立,功能模块与数据库逻辑模式间没有映射关系,程序与数据结构很难封装在一起。如果数据结构复杂,模块独立性很难保证。面向对象方法抽象的系统结构往往并不比结构化方法产生的系统结构简单,但它能映射到数据库结构中,很容易实现程序与数据结构的封装。
在软件工程基本原则中有一条“形式化原则”,即对问题世界的抽象结论应该以形式化语言(图形语言、伪码语言等)表述出来。结构化方法可以用数据流图、系统结构图、数据辞典、状态转移图、实体关系图来进行系统逻辑模型的描述;而面向对象方法可以使用对象模型图、数据辞典、动态模型图、功能模型图。其中对象模型图近似系统结构图与实体关系图的结合,动态模型图类似状态迁移图,功能模型图类似数据流图。

答案解析

相似试题
  • 与传统结构化方法比较,面向对象方法具有哪些方面的优越性?

    简答题查看答案

  • 面向对象分析与设计方法与面向功能(结构化)分析与设计方法的区别是什么?

    简答题查看答案

  • 面向对象开发方法与面向数据流的结构化开发方法有什么不同?使用面向对象开发方法的优点在什么地方?

    简答题查看答案

  • 面向对象方法与结构化生命周期法有什么区别?面向对象方法的基本原则是什么?

    简答题查看答案

  • 结构化方法可使用瀑布模型、增量模型和螺旋模型进行开发,面向对象方法可采用快速原型、增量模型、喷泉模型和统一过程进行开发。

    判断题查看答案

  • 试说明面向对象中的类模块与传统结构化方法中的模块的区别。

    简答题查看答案

  • 比较面向对象的分析方法和面向数据流的分析方法,阐述它们各自的特点。

    简答题查看答案

  • 试比较面向对象单元测试与传统结构化单元测试的异同。

    简答题查看答案

  • 面向对象方法中的对象就是结构化方法中的模块。

    判断题查看答案