正在加载图片...
求开发的,它贯穿于过程,提供过程所要求操作的信息。系统的状态是一组全局变量,这组 全局变量保存状态的值,把它们从一个过程传送到另一个过程 过程性范型是一种成熟的应用开发过程。对这种方法已有许多支持工具。然而,在大型 系统的开发上存在一些问题。 ③面向对象范型:在过程性范型中优先考虑的是过程抽象,而在面向对象范型中优先 考虑的是实体,即问题论域的对象。在面向对象范型中,把标识和模型化问题论域中的主要 实体做为系统开发的起点,主要考虑对象的行为而不是必须执行的一系列动作。 面向对象系统中的对象是数据抽象与过程抽象的综合。系统的状态保存在各个数据抽象 的核心所定义的数据存储中。控制流包含在各个数据抽象中的操作内。不像在过程性范型里 那样,把数据从一个过程传送到另一个过程,而是把控制流从一个数据抽象通过消息传送到 另一个数据抽象。完成的系统体系结构更复杂但也更灵活,如图6.2(b)所示。把控制流分离 成块,这样可以把复杂的动作视为各个局部间的相互作用。 过程性系统 初始化读入计算}写出結束 (a)系统结构基于要执行的任务,改变一个可能需要改变其它所有的 面向对象的系统 (b)系统结构基于对象间的交互,改变一个通常只具有局部影响 图6.1过程性系统和面向对象系统的基本构造 ④面向进程的范型:面向进程的范型是把一个问题分解成独立执行的模块。让不只 个程序同时运行。这些进程互相配合,解决问题。面向进程范型产生的主要的块是进程。 个进程中的活动独立于其它进程的活动,但可以要求从其它进程得到信息,或为其它进程提 供信息。甚至可以异步处理,仅需要进程暂停发送或接收信息。在面向对象范型中,各个对 象是相对独立的,但也存在单线索(单线程)控制。面向进程范型支持与面向对象范型相同的 封装,但可提供多线索(多线程)执行。 ⑤混合范型:在大型系统的开发中,很难说哪种范型对整个问题的解决最好。系统开 发现在有一种补充步骤,可把大型问题分解成 一组子问题。对于每个子问题可以采用适当的 软件范型。例如,设计一个智能数据分析系统 用户界面 (面向存取范型) 时,可把它分解为4个子系统,如图62所示 系统的数据库界面,可以使用面向对象的方法 知识库 分析算法 进行设计;智能数据分析用逻辑范型设计;而 (逻辑范型)(过程性范型) 分析算法则是过程性的;系统通过一个用户界 数据库界面 面来实用化,这个用户界面是用面向存取范型 (面向对象范型) 设计出来的 这种设计需要有某种实现语言或一组协 图62一个智能数据分析系统2 图 6.2 一个智能数据分析系统 求开发的,它贯穿于过程,提供过程所要求操作的信息。系统的状态是一组全局变量,这组 全局变量保存状态的值,把它们从一个过程传送到另一个过程。 过程性范型是一种成熟的应用开发过程。对这种方法已有许多支持工具。然而,在大型 系统的开发上存在一些问题。 ③ 面向对象范型 :在过程性范型中优先考虑的是过程抽象,而在面向对象范型中优先 考虑的是实体,即问题论域的对象。在面向对象范型中,把标识和模型化问题论域中的主要 实体做为系统开发的起点,主要考虑对象的行为而不是必须执行的一系列动作。 面向对象系统中的对象是数据抽象与过程抽象的综合。系统的状态保存在各个数据抽象 的核心所定义的数据存储中。控制流包含在各个数据抽象中的操作内。不像在过程性范型里 那样,把数据从一个过程传送到另一个过程,而是把控制流从一个数据抽象通过消息传送到 另一个数据抽象。完成的系统体系结构更复杂但也更灵活,如图 6.2(b)所示。把控制流分离 成块,这样可以把复杂的动作视为各个局部间的相互作用。 图 6.1 过程性系统和面向对象系统的基本构造 ④ 面向进程的范型 :面向进程的范型是把一个问题分解成独立执行的模块。让不只一 个程序同时运行。这些进程互相配合,解决问题。面向进程范型产生的主要的块是进程。一 个进程中的活动独立于其它进程的活动,但可以要求从其它进程得到信息,或为其它进程提 供信息。甚至可以异步处理,仅需要进程暂停发送或接收信息。在面向对象范型中,各个对 象是相对独立的,但也存在单线索(单线程)控制。面向进程范型支持与面向对象范型相同的 封装,但可提供多线索(多线程)执行。 ⑤ 混合范型 :在大型系统的开发中,很难说哪种范型对整个问题的解决最好。系统开 发现在有一种补充步骤,可把大型问题分解成 一组子问题。对于每个子问题可以采用适当的 软件范型。例如,设计一个智能数据分析系统 时,可把它分解为 4 个子系统,如图 6.2 所示。 系统的数据库界面,可以使用面向对象的方法 进行设计;智能数据分析用逻辑范型设计;而 分析算法则是过程性的;系统通过一个用户界 面来实用化,这个用户界面是用面向存取范型 设计出来的。 这种设计需要有某种实现语言或一组协
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有