计算机二级的公共基础

来源:百度文库 编辑:神马文学网 时间:2024/04/28 03:49:11

                      公共基础

一.算法:解决问题的方法和步骤

基本特征:可行性,确定性,有穷性,拥有足够的情报(有0个或多个输入,有1个或多个输出)。

算法的控制结构:顺序,选择,循环

算法的复杂度主要包括时间复杂度和空间复杂度。时间复杂度是指执行算法所需要的计算工作量。空间复杂度是指执行算法所需要的内存空间。

二.数据结构

数据结构主要研究和讨论的三个方面:

1.数据集合中各数据之间所固有的逻辑关系,即数据的逻辑结构。

2.在对数据进行处理时,各数据元素在计算机中的存储关系,即数据的存储结构。

3.对各种数据结构进行的运算。

主要目的是为了提高数据处理的效率。主要包括两方面:1.提高数据处理的速度,2.尽量节省在数据处理过程中所占用的计算机存储空间。

数据的存储结构类型:顺序,链式。

程序设计基础:

程序=算法+数据结构

程序设计主要经过了结构程序设计和面向对象的程序设计阶段。

程序设计风格会深刻的影响软件的质量和可维护性,良好的程序设计风格可以使程序结构清晰合理,使程序代码便于维护,因此,程序设计风格对保证程序的质量是很重要的。

程序文档化应考虑的几点:

1.符号的命名

2.程序注释:注释一般分为序言性注释和功能性注释。

3.视觉组织

结构化程序设计方法的主要原则可以概括为自顶向下,逐步求精,模块化,限制使用goto语句。

程序设计语言仅仅使用顺序,选择,循环三种基本控制结构。

遵循结构化程序的设计原则,按结构化程序设计方法设计出的程序具有明显的优点:1.程序易于理解,使用和维护  2.提高了编程工作的效率,降低了软件开发成本。

面向对象方法的优点:

1.与人类习惯的思维方法一致

2.稳定性好

3.可重用性好

4.易于开发大型软件产品

5.可维护性好(体现在封装性好)

面向对象的程序设计方法中涉及的对象是系统中用来描述客观事物的一个实体,是构成系统的一个基本单位,它由一组表示其静态特征的属性和它可执行的一组操作组成。

通常把对象的操作也称为方法或服务。

对象的基本特征:

1.标识惟一性

2.分类性

3.多态性

4.封装性

5.模块独立性好

类是对象的抽象,一个对象则是其对应类的一个实例。

继承是使用已有的类定义作为基础建立新类的定义技术,是指能够直接获得已有的性质和特征,而不必重复定义它们。

继承分为单继承与多重继承。

多态性:对象根据所接受的信息而做出动作,同样的信息被不同的对象接受时可导致完全不同的行动,该现象称为多态性。

软件工程基础

计算机软件是包括程序,数据及相关文档的完整集合。

软件的特点:

1.软件是一种逻辑实体,而不是物体实体,具有抽象性。

2.软件的生产与硬件不同,他没有明显的制作过程。

3.软件在运行,使用期间不存在磨损,老化问题。

4.软件的开发,运行对计算机系统具有依赖性,受计算机系统的限制,这导致了软件移植的问题。

5.软件复杂性高,成本昂贵。

6.软件开发涉及诸多的社会因素。

软件危机主要表现:

1.软件需求的增长得不到满足。

2.软件开发成本(高)和进度无法控制。

3.软件质量难以保证。

4.软件不可维护或维护程度非常低。

5.软件开发生产率的提高赶不上硬件的发展和应用需求的增长。

软件工程是应用于计算机软件的定义,开发和维护的一整套方法,工具,文档,实践标准和工序。

软件工程包括3个要素,即方法,工具和过程。

软件工程的核心思想是把软件产品看作一种工程产品来处理。

软件生命周期

通常,将软件产品从提出,实现,使用维护到停止使用退役的过程称为软件生命周期。一般包括可行性研究与需求分析,设计,实现,测试,交付使用以及维护等活动。

软件生命周期分为软件定义,软件开发及软件运行维护三个阶段。

主要活动阶段是:

1.可行性研究与计划制定。

2.需求分析。

3.软件设计。

4.软件实现。

5.软件测试。

6.运行和维护。

软件工程的目标是,在给定成本,进度的前提下,开发出具有有效性,可靠性,可理解性,可维护性,可重用性,可适应性,可移植性,可追踪性和可互操作性且满足用户需求的产品。

软件工程的原则:

基本原则包括抽象,信息隐蔽,模块化,局部化,确定性,一致性,完备性和可验证性。

软件开发工具的完善和发展将促进软件开发方法的进步和完善,促进软件开发的高速度和高质量。

软件开发环境或称软件工程环境是全面支持软件开发全过程的软件工具集合。

软件需求是指用户对目标软件系统在功能,行为,性能,设计约束等方面的期望。需求分析的任务是发现需求,求精,建模,和定义需求的过程。

需求分析阶段:

1.需求获取。

2.需求分析。

3.编写需求规格说明书。

4.需求评审。(验证需求文档的一致性,可行性,完整性和有效性)

需求分析方法:

1.数据结构的Jackson方法,面向数据结构的结构化数据系统开发方法。

2.面向对象的分析方法。

结构化分析就是使用数据流图(DFD),数据字典(DD),结构化英语,判定表和判定树等工具。

结构分析方法的实质是着眼于数据流,自顶向下,逐层分解,建立系统的处理流程,以数据流图和数据字典为主要工具,建立系统的逻辑模型。

结构流图是描述数据处理过程的工具,是需求理解的逻辑模型的图形表示,他直接支持系统的功能。数据流图从数据传递和加工的角度,来刻画数据流从输入到输出的移动变换过程。

建立数据流图的步骤:

1.由外向里

2.自顶向下

3.逐层分解

顶层数据流图应该包括所有相关外部实体,以及外部实体与软件中间的数据流,其作用主要是描述软件的作用范围,对总体功能,输入,输出进行抽象描述,并反映软件和系统,环境的关系。

数据流图的构造规则和注意事项:

1.对加工处理建立惟一,层次性的编号,且每个加工处理通常要求既有输入又有输出。

2.数据存储之间不应该有数据流。

3.数据流图的一致性。数据存储(文件)应被数据流图中的处理读和写,而不是仅读不写或仅写不读。

4.父图,子图关系与平衡规则。相邻两层DFD之间具有父,子关系,子图代表了父图中某个加工的详细描述,父图表示了子图间的接口。子图个数不大于父图中的处理个数。所有子图的输入,输出数据流和父图中相应处理的输入,输出数据流必须一致。

数据字典是结构化分析方法的核心。数据字典是对所有与系统相关的数据元素的一个有组织的列表,以及精确的,严格的定义,使得用户和系统分析员对于输入,输出,存储成分和中间计算结果有共同的理解。

数据字典的作用是对DFD中出现的被命名的图形元素的确切理解。

软件需求规格说明书是需求分析阶段的最后成果,是软件开发中的重要文档之一。

软件需求规格书的作用:

1.便于用户,开发人员进行理解和交流。

2.反映出用户问题的结构,可以作为软件开发工作的基础和依据。

3.作为确定测试和验收的依据。

软件需求规格说明书的特点:

1.正确性,

2.无歧义性,

3.完整性,

4.可验证性,

5.一致性,

6.可理解性,

7.可修改性,

8.可追踪性。

作为设计的基础和验证的依据,软件需求规格说明书应该是精确而无二义性的,需求说明书越精确,则以后出现错误,混淆,反复的可能性越小。用户能看懂需求说明书,并且发现和指出其中的错误是保证软件系统质量的关键,因而需求说明书必须简明易懂,尽量少包含计算机的概念和术语,以便用户和软件人员双方都能接受它。

软件设计的基本原理:

1.抽象,2.模块化(每个模块可以完成一个特定的子功能,各个模块可以按一定的方法组装起来成为一个整体,从而实现整个系统的功能。)3.信息隐蔽,4.模块独立性,5.内聚性。

详细设计

详细设计的任务,是为软件结构图中的每一个模块确定实现算法和局部数据结构,用某种选定的表达工具表示算法和数据结构的细节。

常见的过程设计工具有:

图形工具:程序流程图,N-SPADHIPO

表格工具:判定表。

语言工具:PDL(伪码)。

程序流程:顺序型,选择型,先判断重复型,后判断重复型,多分支选择型。

数据库设计基础

数据是描述事物的符号记录。临时性数据,一般存放于计算机内存中,持久性数据。