第四章 结构化设计3-详细设计.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第四章 结构化设计3-详细设计

第四章 结构化设计 4.5 详细设计 详细设计 详细设计阶段的目标是什么? 详细设计与总体设计的区别是什么? 程序设计方法学是什么? 结构化程序设计方法是什么? 详细设计的工具? 详细设计阶段的目标 详细设计阶段的根本目标是 确定怎样具体的实现所要求的系统; 也就是说,经过这个阶段的设计工作,应该得出对目标系统的精确描述,从而在编码阶段可以将这个描述直接翻译成用某种程序设计语言书写的程序。 详细设计与总体设计的区别 在总体设计阶段,数据项和数据结构以比较抽象的方式描述。 例如,总体设计可以声明一组值从概念上表示一个矩阵,详细设计就要确定用什么数据结构来实现这样的矩阵; 比如特殊的稀疏矩阵技术等等 详细设计要提供关于算法的更多细节,为每个模块增加足够的细节,使得程序员能够以相当直接的方法编码每个模块。 例如,总体设计可以声明一个模块的作用是对一个表进行排序,详细设计则要确定使用哪种排序算法。 详细设计的模块包含实现对应的总体设计的模块所需要的处理逻辑,主要有: 详细的算法, 数据表示和数据结构, 实施的功能和使用的数据之间的关系。 每个模块被编码成过程、子程序、函数或其他类型的命名实体。 程序设计方法学 以程序设计方法为研究对象的学科。 主要涉及用于指导程序设计工作的原理和原则,以及基于这些原理和原则的设计方法和技术,着重研究各种方法的共性和个性,各自的优缺点。 针对某一领域或某一领域的特定一类问题,所用的一整套特定程序设计方法所构成的体系 目前已经出现了多种程序设计方法学,例如:结构化程序设计方法学,各种逻辑程序设计方法学,函数式程序设计方法学,面向对象程序设计方法学等。 结构化程序设计方法 结构化程序设计是一种结构性的编程方法。 其中结构性主要反映如下: 第一:编程工作为一演化过程; 即按抽象级别依次降低,逐步精化,最终得出所需程序的方法编程; 第二,按模块组装的方法编程; 也就是将所需程序编制成只含顺序构造,判定构造以及重复构造,其中每一个构造只允许一个入口和一个出口。 其中,顺序结构,选择结构和循环结构构成了结构化程序设计的核心,它们组合使用 可以实现任意复杂的处理逻辑,除此之外无需其他控制结构。 结构化程序设计的目标 使程序的控制流程线性化 即程序的动态执行顺序符合静态书写结构,这就增强了程序的可读性,不仅容易理解、调试、测试和排错,而且给程序的形式化证明带来了方便。 GOTO语句 两种观点: GOTO语句是构成程序结构混乱不堪的主要原因,一切高级程序设计语言应该删除GOTO语句。 GOTO语句概念简单,使用方便,在某些情况下,保留GOTO语句能使写出的程序更加简洁,并且GOTO语句可直接得到硬件指令的支持。 关于GOTO语句讨论的实质在于: 程序设计首先是讲究结构,还是讲究效率。 好结构的程序不一定是效率高的程序。 结构化程序设计的观点是要求设计好结构的程序。宁可牺牲一些效率,也要保证程序有一个好的结构。 详细设计的工具 详细设计的任务 是给出软件模块结构中各个模块的内部过程描述,也就是模块内部的算法设计。 详细设计的工具可以分为图形、表格、语言三种,包括 程序流程图、 盒图(N-S图)、 PAD图、 类程序设计语言(PDL) 无论哪类工具,对它们的基本要求都是能提供对设计的无歧义的描述,即能指明控制流程、处理功能、数据组织以及其他方面的实现细节,从而在编码阶段能把设计描述直接翻译成程序代码。 程序流程图(Program Flow Chart) 程序流程图又称为程序框图。 优点是: 对控制流程的描绘很直观,便于初学者掌握。 缺点是: (1)程序流程图本质上不是逐步求精的好工具,它诱使程序员过早的考虑程序的控制流程,而不去考虑程序的全局结构; (2)程序流程图中用箭头代表控制流,因此程序员不受任何约束,可以完全不顾结构程序设计的精神,随意转移控制; (3)程序流程图不易表示数据结构; 主要符号 循环的标准符号 注解的使用 多出口判断 N-S盒图(Box Diagram N-S图由Nassi Shneiderman 1973年提出,又称盒图(Box Diagram): 。 处于要有一种不允许违背结构程序设计精神的考虑。 同程序流程图相比,它以一种结构化的方法严格地限制从一个处理到另一个处理的控制转移。 盒图的基本符号 每一个N-S图开始于一个大的矩形,表示它所要描述的模块,该矩形的内部被分成不同的部分,分别表示不同的子处理过程,这些子处理过程又可以进一步分解成为更小的部分。但是每次分解只能使用图给出的基本符号,因此最终得到的详细设计必然是结构化的。 N-S图的特点 ① 没有箭头,不允许随意转移控制; ② 每个矩形框(Case中条件取值例外)都是一个功能域(即一个特定结构的作用域),

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档