算机二级C语言辅导公共基础知识第二.ppt
《算机二级C语言辅导公共基础知识第二.ppt》由会员分享,可在线阅读,更多相关《算机二级C语言辅导公共基础知识第二.ppt(41页珍藏版)》请在三一办公上搜索。
1、第二、三章,程序设计及软件工程基础,本章主要内容,程序设计方法和风格 结构化程序设计 面向对象程序设计 软件工程基本概念 结构化分析方法 软件测试 程序的调试,2.1 程序设计方法和风格,什么是程序,指令的集合。(解释指令),通过硬件控制系统自动完成某一功能。,通过一系列代码实现。,程序设计语言,计算机本身仅能识别二进制代码“0”、“1”。,编译程序和解释程序,编程最直接、最低级的就是机器语言。,汇编语言。,程序设计风格,基本概念:编写程序时所表现出来的特点、习惯和逻辑思路。一般从以下四部分加以规范:,源程序中的内部文档:选择标示符的名字、注释(序言性和功能性注释)、程序的视觉组织。,数据说明
2、:显式地说明一切变量、数据说明的次序应该规范化、便于查找变量(按顺序排列)、对复杂数据结构应注释说明,语句的结构:每条语句简单明了、尽量不用或少用GOTO语句、尽量只采用3种基本控制结构编程,输入和输出:对所有输入数据进行校验和合理性检查、输入输出格式保持一致、设计良好的输出报表,程序设计三种方法,结构化设计法,模块内部程序各部分要按照自顶向下的结构划分,各程序部分应按功能组合,快速原型法(软件工程法),利用现有的工具和原型方法快速地开发所要的程序,面向对象程序设计法,以对象为核心,与人类习惯的思维方法一致,2.2 结构化程序设计,基本思想,对大型的程序设计,使用一些基本的结构来设计程序,无论
3、多复杂的程序,都可以使用这些基本结构按一定的顺序组合起来。这些基本结构的特点都是只有一个入口、一个出口。由这些基本结构组成的程序就避免了任意转移、阅读起来需要来回寻找的问题。,设计原则,自顶向下,逐步求精,模块化,限制使用goto语句,基本结构:顺序、选择、循环,2.3 面向对象程序设计,基本思想 客观世界中任何一个事物都可以被看成是一个对象,面向对象方法的本质就是主张从客观世界固有的事物出发来构造系统,系统中的对象及对象之间的关系能够如实地反映问题域中固有的事物及其关系。结构化与面向对象方法比较 结构化的分解突出过程,即如何做(How to do)?它强调代码的功能是如何实现的;面向对象的分
4、解突出现实世界和抽象的对象,即做什么(What to do)?,主要优点,与人类习惯的思维方法一致,稳定性好,可重用性好,易于开发大型软件产品,可维护性好,面向对象程序设计主要考虑的是提高软件的可重用性!,面向对象的基本概念,对象(Object),对象是基本的运行时认得实体,它既包括数据(属性),也包括作用于数据的操作(行为)。,一个对象把属性和行为封装为一个整体,一个对象通常可由对象名、属性和操作3部分组成,面向对象(Object Oriented,OO),从该问题所涉及的对象入手来研究问题。,消息(Message),对象之间进行通信的一种数据构造,消息包括:接受消息对象名、消息标识符、零个
5、或多个参数。,面向对象的基本概念,类(Class),一个类定义了一组大体上相似的对象。,一个类所包含的方法和数据描述一组对象的共同行为和属性。,类是在对象之上的抽象,对象是类的具体化,是类的实例,封装(Encapsulation),将数据和操作数据的函数衔接在一起,构成一个具有类类型的对象的描述。,对象的内部实现受保护,外界不能访问,封装简化了程序员对对象的使用,面向对象的基本概念,继承(Inheritance),继承是父类和子类之间共享数据的方法的机制,一个子类可以继承它的父类(或祖先类)中的属性和操作,子类中可以定义自己的属性和操作,单重继承、多重继承,多态性(Polymorphism),
6、不同的对象收到同一消息可以产生完全不同的结构,这一现象叫做多态性,多态的实现受到继承的支持,软件的定义,软件(software)是计算机系统中与硬件(hardware)相互依存的另一部分。软件包括三个部分:程序(program)、相关数据(data)、说明文档(document)。,软件的特点,软件是一种逻辑实体,不是物理实体,具有抽象性。,软件没有明显的制造过程。,软件在使用过程中,没有磨损、老化问题,软件依赖与硬件和环境,导致了移植问题,软件是复杂的,而且以后会更复杂,软件的成本相当昂贵,软件工作牵涉到很多社会因素,2.4 软件工程基本概念,软件危机,早期的软件主要指程序,采用个体工作方式
7、,缺少相关文档,质量低,维护困难,这些问题称为“软件危机”,软件工程概念的出现源自于软件危机。,软件工程,软件工程是指应用计算机科学、数学及管理科学等原理,以工程化的原则和方法来解决软件问题的工程。其目的是提高软件生产率、提高软件质量、降低软件成本。,软件工程基本目标,在给定成本、进度的前提下,开发出具有有效性、可靠性、可理解性、可维护性、可重用性、可适应性、可移植性、可追踪性和可互操作性且满足用户需求的产品。,软件工程原则:抽象、信息隐蔽、模块化、局部化、确定性、一致性、完备性和可验证性。,1)抽象:抽象是事物最基本的特性和行为,忽略非本质细节,采用分层次抽象,自顶向下,逐层细化来控制软件开
8、发过程的复杂性。,2)信息隐蔽:采用封装技术,将程序模块的实现细节隐蔽起来,使模块接口尽量简单。,3)模块化:模块是程序中相对独立的成分,一个独立的编程单位。模块的大小要适中,过大模块内部复杂性增加,太小整个系统过于复杂。,4)局部化:保证模块间具有松耦合性,模块内部有高内聚性。,5)确定性:软件中所有概念的表达应是确定、无歧义且规范的。,6)一致性:内外部接口保持一致,系统规格说明与行为保持一致。,7)完备性:软件系统不丢失任何重要成分,完全实现系统所需功能。,8)可验证性:遵循容易检查、测评、评审原则,确保系统正确性,软件工程三要素,方法:完成软件工程项目的技术手段,工具:支持软件的开发、
9、管理、文档生成,过程:支持软件开发的各个环节的控制、管理,软件工具和软件开发环境,软件工具(CASE):用来辅助软件开、运行、维护、管理、支持等过程中的活动的软件,软件开发环境:支持软件产品开发的软件系统,它由软件工具集和环境集成机制构成,软件生命周期,软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期。分为软件定义、软件开发及软件运行维护3个阶段。,1)软件定义阶段:包括制定计划和需求分析。,制定计划:确定总目标;可行性研究;探讨解决方案;制定开发计划。,需求分析:对待开发软件提出的需求进行分析并给出详细的定义。,2)软件开发阶段:,软件设计:分为概要设计和详细设计两个部分。
10、软件实现:把软件设计转换成计算机可以接受的程序代码。,软件测试:在设计测试用例的基础上检验软件的各个组成部分。,3)软件运行维护阶段(生命周期中花费最多的阶段):软件投入运行,并在使用中不断地维护,进行必要的扩充和删改。,需求分析,用户对目标软件系统在功能、行为、性能、设计约束等方面的期望。需求分析的任务是发现需求、求精、建模和定义需求的过程。需求分析将创建所需的数据模型、功能模型和控制模型。,需求分析的四步骤,需求获取、需求分析、编写需求规格说明书和需求评审,需求分析的方法,结构化分析方法、面向对象分析方法,2.5 结构化分析方法,结构化分析方法,结构化程序设计理论在软件需求分析阶段的运用,
11、其目的是帮助弄清用户对软件的需求。,常用工具,数据流图、数据字典、判定树、判定表,开发策略,自顶向下,逐层分解,数据流图(DFD):以图形的方式描绘数据在系统中流动和处理的过程,它反映了系统必须完成的逻辑功能,是结构化分析方法中用于表示系统逻辑模型的一种工具。,加工(转换):输入数据经加工变换产生输出。数据流:沿箭头方向传送数据的通道,旁边标注数据流名。存储文件(数据源):表示处理过程中存放各种数据的文件。源、潭:表示系统和环境的接口,属系统之外的实体。,画数据流图的基本步骤,自外向内,自顶向下,逐层细化,完善求精,数据流图的示例,数据字典(DD):对所有与系统相关的数据元素的一个有组织的列表
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 二级 语言 辅导 公共 基础知识 第二
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-6139519.html