大学计算机基础复习资料第9章程序设计基础.ppt

上传人:tia****nde 文档编号:8798274 上传时间:2020-04-01 格式:PPT 页数:31 大小:366.81KB
返回 下载 相关 举报
大学计算机基础复习资料第9章程序设计基础.ppt_第1页
第1页 / 共31页
大学计算机基础复习资料第9章程序设计基础.ppt_第2页
第2页 / 共31页
大学计算机基础复习资料第9章程序设计基础.ppt_第3页
第3页 / 共31页
点击查看更多>>
资源描述
大学计算机基础 第9章程序设计基础 大学计算机基础 本章内容 9 1程序设计9 2结构化程序设计9 3面向对象程序设计 大学计算机基础 9 1程序设计 大学计算机基础 9 1程序设计 9 1 1程序设计的方法9 1 2程序设计的风格 大学计算机基础 9 1 1程序设计的方法 程序设计程序设计方法 程序设计是一门技术 需要相应的理论 技术 方法和工具来支持 程序设计方法是关于以什么观点来研究问题并进行求解 以及如何进行系统构造的软件方法学 就程序设计方法和技术的发展而言 主要经过了结构化程序设计和面向对象程序设计阶段 大学计算机基础 9 1 2程序设计的风格 要形成良好的程序设计风格 主要应注重和考虑下述一些因素 源程序文档化 数据说明 语句构造 输入输出方法 效率等 大学计算机基础 9 1 2程序设计的风格 续 源程序文档化 符号名的命名 符号名即标识符 包括模块名 变量名 常量名 标号名 子程序名以及数据区名 缓冲区名等 这些名字应能反映它所代表的实际东西 应有一定的实际意义 使其能够见名知意 有助于对程序功能的理解 例如 表示次数的量用times 表示总量用total 表示平均值用average 表示和的量用sum等 为达此目的 不应限制名字的长度 大学计算机基础 9 1 2程序设计的风格 续 程序的注释 夹在程序中的注释是程序员与日后的程序读者之间通信的重要手段 正确的注释能够帮助读者理解程序 可为后续阶段进行测试和维护 提供明确的指导 因此注释决不是可有可无的 大多数程序设计语言允许使用自然语言写注释 这给阅读程序带来很大的方便 一些正规的程序文本中 注释行的数量占到整个源程序的1 3到1 2 注释分为序言性注释和功能性注释 序言性注释通常置于每个程序模块的开头部分 它应当给出程序的整体说明 对于理解程序本身具有引导作用 功能性注释嵌在源程序体中 用以描述其后的语句或程序段是在作什么工作 也就是解释下面要 作什么 或是执行了下面的语句会怎么样 而不要解释下面怎么作 因为解释怎么作常常是与程序本身重复的 大学计算机基础 9 1 2程序设计的风格 续 视觉组织 空格 空行和移行 为使程序的结构一目了然 可以在程序中利用空格 空行 缩进等技巧使程序层次清晰 IF THENIF THEN ELSE ENDIF ELSE ENDIF 大学计算机基础 9 1 2程序设计的风格 续 数据说明 数据说明的顺序应规范 使数据属性容易查找 也有利于测试 排错和维护 原则上 数据说明的次序与语法无关 其次序是任意的 同一说明语句中变量说明有序化 当多个变量名用一个语句说明时 应当对这些变量按字母的顺序排 使用注释说明复杂数据结构 大学计算机基础 9 1 2程序设计的风格 续 语句构造 构造单个语句是编码阶段的任务 语句构造力求简单直接 不能为了追求效率而使语句复杂化 为了便于阅读和理解 不要一行多个语句 不同层次的语句应采用缩进形式 使程序的逻辑结构和功能特征更加清晰 要避免复杂的判定条件 避免多重的循环嵌套 表达式中使用括号以提高运算次序的清晰度等等 大学计算机基础 9 1 2程序设计的风格 续 输入输出方法 输入操作步骤和输入格式尽量简单 应检查输入数据的合法性 有效性 报告必要的输入状态信息即及错误信息 输入一批数据时 使用数据或文件结束标志 而不要用计算来控制 交互式输入时 提供可用的选择和边界值 当程序设计语言有严格的格式要求时 应保持输入格式的一致性 输入数据表格化 图形化 大学计算机基础 9 1 2程序设计的风格 续 效率效率是指处理机时间和存储空间的使用 对效率的追求应明确以下几点 效率是一个性能要求 目标在需求分析时给出 追求效率要建立在不损害程序可读性或可靠性的基础上 要先使程序正确 清晰 再提高程序效率 提高程序效率的根本途径在于选择良好的设计方法 良好的数据结构算法 而不是靠编程时对程序语句做调整 大学计算机基础 9 2结构化程序设计 大学计算机基础 9 2结构化程序设计 9 2 1结构化程序设计的原则9 2 2结构化程序设计的基本结构和特点9 2 3结构化程序设计原则和方法的应用 大学计算机基础 9 2 1结构化程序设计的原则 自顶向下逐步求精 程序设计时 应先考虑总体 后考虑细节 先考虑全局目标 后考虑局部目标 先从最上层总目标开始设计 逐步使问题具体化 对复杂问题 应设计一些子目标作过渡 逐步细化 大学计算机基础 9 2 1结构化程序设计的原则 续 模块化限制使用goto语句 模块化是把程序要解决的总目标分解为分目标 再进一步分解为具体的小目标 把每个小目标称为一个模块 goto语句的使用会导致程序流程的混乱 因此应限制使用 大学计算机基础 9 2 2结构化程序设计的基本结构和特点 三种基本控制结构 顺序结构选择结构循环结构 程序优点是 结构良好 各模块间的关系清晰简单 每一模块内部由基本单元组成 设计出的程序清晰易读 可理解性好 容易设计 容易验证其正确性 也容易维护 大学计算机基础 9 2 3结构化程序设计原则和方法的应用 程序设计过程中的原则 自顶向下 逐步细化 由粗到细 一步步展开 把一个模块的功能逐步分解 细化为一系列具体的步骤 进而翻译成一系列用某种程序设计语言写成的程序 大学计算机基础 9 2 3结构化程序设计原则和方法的应用 在具体实施中 要注意以下几点 使用语言中的顺序 选择 循环等有限的基本控制结构表示程序逻辑 程序语句组成容易识别的块 每块只有一个入口和一个出口 严格控制goto语句 选用的控制结构只准许有一个入口和一个出口 复杂结构应该用基本控制结构进行组合嵌套来实现 语言中没有的控制结构 可用一段等价的程序段模拟 但要求该程序段在整个系统中应前后一致 大学计算机基础 9 3面向对象程序设计 大学计算机基础 9 3面向对象程序设计 9 3 1面向对象程序设计概述9 3 2面向对象方法的特点9 3 3面向对象程序设计的相关概念 大学计算机基础 9 3 1面向对象程序设计概述 是一种把面向对象的思想运用于软件开发过程中 指导开发活动的系统方法 简称OO方法 是建立在 对象 概念 对象 类和继承 基础上的方法学 面向对象程序设计方法 大学计算机基础 9 3 1面向对象程序设计概述 续 对问题空间进行自然分割 以更接近人类思维的方式 建立问题域模型 以便对客观实体进行结构模拟和行为模拟 从而使所设计出的软件尽可能直接地描述现实世界 构造出模块化的 可重用的 维护性好的软件 并能够控制软件的复杂性和降低开发维护费用 面向对象程序设计基本思想 大学计算机基础 9 3 2面向对象方法的特点 系统由对象构成 对象是一个包含属性和操作两方面的独立单元 对象之间通过消息传递联系 面向对象方法按照人类的自然思维方式 面对客观世界建立软件系统模型 对象 类 继承 封装 消息等基本概念符合人类的自然思维方式 有利于对业务领域和系统责任的理解 有利于人员的交流 大学计算机基础 9 3 2面向对象方法的特点 续 面向对象的封装机制使开发人员可以把最稳定的部分 即对象 作为构筑系统的基本单位 而把容易发生变化的部分 即属性与操作 封装在对象之内 对象之间通过接口联系 使得需求变化的影响尽可能地限制在对象的内部 面向对象方法支持软件复用 对象具有封装性和信息隐蔽等特性 使其容易实现软件复用 面向对象方法对需求变化有较好的适应性 大学计算机基础 9 3 2面向对象方法的特点 续 系统出错时容易定位和修改 而且不至于牵一发而动全身 对象类可以派生成新类 类可以产生实例对象 从而实现了对象类数据结构和操作代码的软件复用 面向对象程序设计语言的开发环境一般预定义了系统动态链接库 提供大量公用程序代码 提高了开发效率和质量 面向对象的软件系统可维护性好 大学计算机基础 9 3 3面向对象程序设计的相关概念 对象消息 对象是程序的基本单位 是一组数据 属性 和施加于这些数据上的一组操作代码 操作 构成的逻辑实体 消息是为了实现某一功能而要求某个对象执行其中某个功能操作的规格说明 对象之间的相互服务是通过消息来连接实现的 大学计算机基础 9 3 3面向对象程序设计的相关概念 续 属性 事件和方法 属性是对象具有的特征或某一方面的行为 事件是指对象能够识别的动作 可以编写相应的代码对此动作进行响应 事件可由系统发生 也可由用户执行某种操作来发生 方法是对象能够执行的操作 是对象具有的功能体现 是实现每条消息具体功能的手段 大学计算机基础 9 3 3面向对象程序设计的相关概念 续 继承 继承是一个类 子类 直接使用另一个类 父类 的所有属性和方法 权限为私有的属性和方法除外 继承具有传递性 封装性说明包含和隐藏对象信息 如内部数据结构和代码的能力 封装使操作对象的内部复杂性与应用程序的其他部分隔离开来 封装 大学计算机基础 9 3 3面向对象程序设计的相关概念 续 封装 封装性说明包含和隐藏对象信息 如内部数据结构和代码的能力 封装使操作对象的内部复杂性与应用程序的其他部分隔离开来 多态性 多态性是指一些关联的类包含同名的方法程序 但方法程序的内容可以不同 具体调用哪种方法程序在运行时根据对象的类确定
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!