软件开发技术基础复习要点

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了软件开发技术基础复习要点相关的知识,希望对你有一定的参考价值。

软件开发技术基础复习要点

1.生存周期:

指一个软件从提出开发要求开始,经过需求分析、设计、制造、调试、使用、维护,直到软件产品被淘汰为止的整个过程。

2.简述软件工程的基本原理:

  1. 用分阶段的生命周期计划严格管理;
  2. 坚持进行阶段评审;
  3. 实行严格的产品控制;
  4. 采纳现代程序设计技术;
  5. 结果应该能清楚地审查;
  6. 开发小组应小而精;
  7. 承认不断改进软件工程实践的必要性。

3.简述产生软件危机的原因和解决办法:

原因:开发软件所需的高成本与软件产品的低质量之间存在尖锐的矛盾,致使软件开发陷入循环之中,即研制软件系统需要投入大量的人力、财力和物力,但系统的质量却无法保证。

办法:a.充分吸收和借鉴人类长期以来从事工程项目中积累的行之有效的原理、概念和方法;

b.推广在实践中总结出来的开发软件的成功的技术与方法,并研究更有效的技术与方法;

c.根据不同的应用灵域,开发、使用更好地软件工具。

4.简述B/S模式: (浏览器/服务器、Browser/Server系统)

    a.B/S系统是种B/W/D三层结构系统;

    b.第一层客户端是用户与整个系统的接口,客户的应用程序就是一个通用的浏览器;

    c.第二层是Web服务器,启动相应的进程来响应处理请求,并动态生成一串嵌入了处理结果的html代码,返回给客户端的浏览器;

    d.第三层是数据库服务器,负责协调不同的Web服务器发出的应用请求。

 

  1. 简要说明循环队列的实现:
    1. 入队操作:若队列不满,则在队尾插入元素x作为新的队尾;
    2. 出队操作:若队列不空,则删除队头元素并用e取回该元素的值;
    3. 取队头元素:若队列不空,则用e取回对头元素的值。
  2. 满二叉树:当二叉树每个分支节点的度都是2,且所有叶子节点都在同一层上,则称为满二叉树。
  3. 简述图有哪些遍历方法?其具体过程怎样实现?

    方法:深度优先遍历(depth-first search)和广度优先遍历(breadth-first search)。

    过程:

    a. 深度优先遍历:

基本思想:首先从图中某个顶点v0出发,访问此顶点,然后依次从v0相邻的顶点出发深度优先遍历,直至图中所有与v0路径相通的顶点都被访问了;若此时尚有顶点未被访问,则从中选一个顶点作为起始点,重复上述过程,直到所有的顶点都被访问。可以看出深度优先遍历是一个递归的过程。

下图中的一个无向图

其深度优先遍历得到的序列为:  0->1->3->7->4->2->5->6

 

 

 

b. 广度优先遍历:

首先,从图的某个顶点v0出发,访问了v0之后,依次访问与v0相邻的未被访问的顶点,然后分别从这些顶点出发,广度优先遍历,直至所有的顶点都被访问完。

如下图中

其广度优先遍历得到的序列为:  0->1->2->3->4->5->6->7

技术分享

  1. 简述普里姆算法的原理和过程:

    基本思想:普里姆算法是一种构造最小生成树的算法,它是按逐个将顶点连通的方式来构造最小生成树的;

    过程:从连通网络N = { V, E }中的某一顶点u0出发,选择与它关联的具有最小权值的边(u0, v),将其顶点加入到生成树的顶点集合U中。以后每一步从一个顶点在U中,而另一个顶点不在U中的各条边中选择权值最小的边(u, v),把该边加入到生成树的边集TE中,把它的顶点加入到集合U中。如此重复执行,直到网络中的所有顶点都加入到生成树顶点集合U中为止。

解释链接:http://www.cnblogs.com/wuchanming/p/4147419.html

 

1.简述操作系统的五大功能:

1CPU与进程管理:对CPU的时间进行合理分配;
2
、存储管理:主要进行内存的分配和管理
3
、设备管理:根据一定的设备分配原则对设备进行分配,使设备与主机能够并行工作,为用户提供良好的设备使用界面;

4、文件管理:有效的管理文件的存储空间,合理地组织和管理文件系统,为文件访问和文件保护提供有效的方法与手段;
5
、人机接口:或称用户接口,是指提供给用户操作计算机的界面,一般由命令接口和程序接口两种类型。

2.实时操作系统: RTOS

是指当外界事件或数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统做出快速响应,调度一切可利用的资源完成实时任务,并控制所有实时任务协调一致运行的操作系统。提供及时响应和高可靠性是其主要特点。

3.简述段式存储管理技术:

    将程序的地址空间划分为若干段,为每个段分配一个连续的分区,每个进程都拥有一个二维的地址空间(段号和段内地址),进程中的各段可离散存放在内存不同的分区中。

4.什么是进程?有哪些状态?如何进行转换?

a.一个进程就是程序的一次执行,是操作系统进行资源调度和分配的独立单位;

b.状态有三种:就绪、运行、等待;

c.转换:

 

技术分享技术分享技术分享技术分享技术分享

5. 进程和线程的主要区别是什么:

    a.进程是程序的一次执行,线程可以理解为进程中的执行的一段程序片段。

    b.进程间是独立的,这表现在内存空间,上下文环境;线程运行在进程空间内。 
    c.
一般来讲(不使用特殊技术)进程是无法突破进程边界存取其他进程内的存储空间;而线程由于处于进程空间内,所以同一进程所产生的线程共享同一内存空间。
    d.
同一进程中的两段代码不能够同时执行,除非引入线程。 
e.
线程是属于进程的,当进程退出时该进程所产生的线程都会被强制退出并清除。 
    f.
线程占用的资源要少于进程所占用的资源。 
    g.
进程和线程都可以有优先级。 

1.简述数据、数据库、数据库管理系统之间的区别及相互联系:

    a.数据(Data):是数据库中存储的基本对象;

描述事物的符号记录称为数据。数据的种类有数字、文字、图形、图像、声音、正文等。数据与其语义是不可分的。 

b.数据库(DataBase,简称DB):数据库是长期储存在计算机内的、有组织的、可共享的数据集合。

     c.数据库系统(DataBase Sytem,简称DBS):数据库系统是指在计算机系统中引入数据库后的系统构成,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。 

2.外模式:

也称子模式或用户模式,它是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。 理解: 一个数据库可以有多个外模式; 外模式就是用户视图; 外模式是保证数据安全性的一个有力措施。

3.参照完整性规则:

    要求通过定义的外关键字和主关键字之间的的引用规则来约束两个关系之间的联系。

实体完整性规则:

关系中的元组的关键字不能为空且取值唯一。

4.多媒体技术:

    指利用计算机通过图形、视频、文本和音频的交互混合,以数字化的方式集成在一起,从而使计算机具有表现、处理、存储多媒体信息的综合和交互能力。

5.TCP/IP协议:Transmission Control Protocol/Internet Protocol

    又名网络通讯协议,是Internet最基本的协议、Internet国际互联网络的基础,由网络层的IP协议和传输层的TCP协议组成。。TCP/IP 定义了电子设备如何连入因特网,以及数据如何在它们之间传输的标准。协议采用了4层的层级结构,每一层都呼叫它的下一层所提供的协议来完成自己的需求。

  1. TCP负责发现传输的问题,一有问题就发出信号,要求重新传输,直到所有数据安全正确地传输到目的地。
  2. IP是给因特网的每一台联网设备规定一个地址。









以上是关于软件开发技术基础复习要点的主要内容,如果未能解决你的问题,请参考以下文章

Python原来这么好学-1.3节: 知识要点总结与内容复习

前端技能树,面试复习—— 风中劲草:知识要点精讲精炼手册

前端技能树,面试复习第 52 天—— 手写代码:Javascript 基础考核

测试复习大纲

python 全栈开发:基础复习

软件需求分析复习要点