程序员培训指南.docx
- 文档编号:7431671
- 上传时间:2023-01-23
- 格式:DOCX
- 页数:29
- 大小:61.22KB
程序员培训指南.docx
《程序员培训指南.docx》由会员分享,可在线阅读,更多相关《程序员培训指南.docx(29页珍藏版)》请在冰豆网上搜索。
程序员培训指南
程序员考试培训指南
一、考试说明
1.考试目标
通过本考试的合格人员能根据软件开发项目管理和软件工程的要求,按照程序设计规格说明书编制并调试程序,写出相应的程序文档,具有助理工程师(或技术员)的实际工作能力和业务水平。
2.考试要求
(1)掌握数制及其转换、数据的机内表示、算术和逻辑运算、应用数学的基础知识;
(2)了解计算机的组成以及各主要部件性能指标;
(3)掌握操作系统、程序设计语言的基础知识;
(4)熟练掌握基本数据结构和常用算法;
(5)熟练掌握C程序设计语言以及C++、Java中的一种程序设计语言;
(6)熟悉数据库、网络和多媒体的基础知识;
(7)了解软件工程的基础知识、软件过程基本知识、软件开发项目管理的常识;
(8)了解常用信息技术标准、安全性以及有关法律、法规的基础知识;
(9)了解信息化及计算机应用的基础知识;
(10)正确阅读和理解计算机领域的简单英文资料。
3.考试科目
计算机与软件工程基础知识,考试时间为150分钟,笔试,选择题;
程序设计,考试时间为150分钟,笔试,问答题。
二、考试内容
说明:
“I”、“II”和“III”表示掌握或熟悉的程度。
“I”:
对所列知识要理解其内容及含义(理解)。
“II”:
在有关问题中能直接使用(一般应用)。
“III”:
对所列知识要理解其确切含义及与其它知识的联系,能够进行叙述和解释,并能在实际问题的分析、综合、推理和判断等过程中运用(综合应用)。
考试科目1:
计算机与软件工程基础知识
1.计算机科学基础
1.1数制及其转换
●二进制、十进制和十六进制等常用数制及其相互转换
Ø二进制与十进制之间的相互转换(II)
Ø二进制与十六进制之间的相互转换(I)
1.2数据的表示
●数的表示
Ø带符号定点数据(纯整数和纯小数)的原码、反码、补码表示(II)
Ø浮点数(实数)的表示(I)
Ø精度和溢出的概念(II)
●非数值数据的表示(字符和汉字表示、声音表示、图像表示)
Ø西文字符的表示(I)
Ø汉字的表示方法(I)
Ø声音数据的表示方法(I)
Ø图像数据的表示方法(I)
1.3算术运算和逻辑运算
●计算机中二进制数的运算方法
Ø补码表示定点数的相加、相减运算(I)
●逻辑代数的基本运算
Ø基本的与、或、非逻辑运算(II)
1.4数学应用
●常用数值计算
Ø矩阵的基本运算(I)
Ø方程的近似求解(I)
Ø线性插值(I)
●排列组合,应用统计
Ø排列组合计算(I)
Ø基本的数据统计分析方法及实例计算(I)
●编码基础
ØASCII码的特点及编码计算(II)
Ø汉字编码的特点(I)
Ø奇偶校验码的特点及实例计算(II)
Ø循环冗余码的定义及构造(I)
Ø海明码的定义及构造(I)
1.5常用数据结构
●数组
Ø数组的定义及特点(I)
Ø一维数组元素的存储特点和元素位置计算(II)
Ø二维数组元素的按行存储及按列存储方式的特点及元素的位置计算(II)
Ø静态数组的概念及动态数组的概念(I)
●线性表及链表
Ø线性表的定义和基本运算(I)
Ø线性表的顺序存储和特点(I)
Ø指针、结点、头指针和头结点的概念(I)
Ø单向链表的定义及特点(II)
Ø双向链表的定义及特点(I)
Ø环形链表的定义及特点(II)
●队列、栈
Ø队列的定义及运算特点(II)
Ø循环队列的定义及运算(I)
Ø队列采用环形链表的运算特点(I)
Ø栈的定义及运算特点(II)
Ø栈采用一维数组存储结构的运算特点(I)
Ø栈采单向链表存储结构的运算特点(I)
●树
Ø二叉树的定义(I)
Ø二叉树的顺序存储结构和二叉链表存储结构的特点(II)
Ø二叉树的先序、中序、后序和层序遍历运算的含义(II)
Ø最优二叉树(哈夫曼树)的定义(I)
●图
Ø图的定义和常用术语(I)
Ø图的邻接矩阵存储结构和邻接表存储结构定义及特点(II)
1.6常用算法
●算法与数据结构的关系
Ø算法的定义和特点(I)
Ø算法与数据结构的关系(I)
●算法设计和算法描述
Ø基本的算法设计方法(I)
Ø算法的流程图描述和伪代码描述方法(II)
●常用的排序算法
Ø插入排序、冒泡排序、选择排序算法(III)
Ø希尔排序、快速排序、堆排序、归并排序算法(II)
●查找算法
Ø顺序查找、二分查找过程(III)
●常用的数值计算方法(II)
●字符串处理算法(II)
●递归算法(I)
●最小生成树、拓扑排序和单源点最短路径求解算法(I)
2.计算机系统基础知识
2.1硬件基础知识
2.1.1计算机的类型和特点
●微机(PC机)、工作站、服务器、主机、大型计算机、巨型计算机、并行机的特点(I)
2.1.2中央处理器CPU
●CPU的组成
ØCPU的组成和基本结构(I)
Ø控制器与运算器的基本组成和功能(I)
●常用的寄存器
Ø累加器AC、标志寄存器、通用寄存器组的概念和功能(I)
Ø程序计数器(PC)、指令寄存器(IR)、地址寄存器(MAR)和数据寄存器(MDR)的定义和作用(I)
●指令系统,寻址方式
Ø指令系统的概念(I)
Ø指令的概念、格式和类型(I)
Ø立即寻址、直接寻址、寄存器寻址、寄存器间接寻址、间接寻址、相对寻址、变址寻址的含义(I)
●指令执行控制,中断控制,处理机性能
Ø指令的执行过程(I)
Ø流水线的基本概念(I)
Ø中断的概念(II)
2.1.3主存和辅存
●存储介质(半导体、硬盘、光盘、U盘等)
Ø半导体存储器的特点(I)
Ø硬盘的参数、容量(II)
ØU盘的容量和特点(II)
●高速缓存(Cache),主存
Ø高速缓存(Cache)的概念、作用和基本构成(I)
Ø主存的类型、容量和性能指标(II)
●辅存设备
Ø磁盘、磁带、光盘、DVD盘、U盘等辅存设备的特点、性能和容量(II)
2.1.4I/O接口、I/O设备和通信设备
●I/O接口
ØI/O接口的功能(I)
Ø程序查询方式、中断处理方式的含义和特点(I)
ØDMA(直接存储器存取)方式的含义和特点(I)
●I/O设备(类型、特性)
Ø常见I/O设备的类型和特性(I)
●通信设备(类型、特性)
Ø常见通信设备的类型和特性(I)
●I/O设备、通信设备的连接方法和连接介质类型
Ø常见I/O设备与主机的连接方法(I)
Ø总线的概念、类型和特点(II)
Ø常见通信设备的连接方法(I)
Ø常见连接介质的类型和特点(I)
2.2软件基础知识
2.2.1操作系统基础知识
●操作系统的类型和功能
Ø操作系统作用、特征与功能(I)
Ø操作系统分类(I)
Ø嵌入式操作系统的基本概念(I)
Ø网络操作系统的基本概念(I)
Ø分时操作系统与实时操作系统,网络操作系统与分布式操作系统的区别(I)
●处理机管理(进程、线程)
Ø进程的定义及组成(I)
Ø进程控制块(PCB)的基本概念(I)
Ø进程状态的三态模型和五态模型(II)
Ø进程间的通信,临界资源、临界区、同步与互斥的基本概念(I)
ØP/V操作(II)
Ø进程调度:
理解高级调度、中级调度、低级调度、调度方式方面的基础知识(I)
Ø死锁的定义、产生死锁的原因、产生死锁的必要条件(I)
Ø线程的定义,线程与进程的区别(Ⅰ)
●存储管理
Ø虚拟地址、地址空间、存储空间、地址重定位的基本概念(Ⅰ)
Ø固定分区、可变分区、可重定位分区的基本概念(Ⅰ)
Ø分页/请求分页存储管理的基本概念与原理(I)
●设备管理
Ø设备管理基本概念,块设备、字符设备、独占设备、共享设备、虚拟设备的含义(I)
ØSpooling(SimultaneousPeripheralOperationsOnLine)定义、组成和结构(I)
Ø引入缓冲技术的原因与目的(I)
Ø磁盘调度的基本概念:
移臂调度、旋转调度(I)
Ø先来先服务(First-ComeFirst-Served,FCFS)、最短寻道时间优先SSTF(ShortestSeekTimeFirst)、扫描算法(SCAN)、单向扫描调度算法(CSCAN)磁盘调度算法的基本思想(I)
●文件管理
Ø文件、文件系统、文件类型、文件组织结构的基本概念(I)
Ø文件目录的概念,一级目录、二级目录、多级目录的基本概念(I)
Ø文件的存取方法:
顺序存取法、直接存取法、按键存取法的基本概念(I)
Ø位示图、空闲块表等文件存储空间的管理算法思想(I)
Ø空闲块链、成组链接法的基本概念(I)
●作业管理
Ø作业的状态(提交、后备、执行、完成)、作业控制块和作业后备队列的基本概念(I)
Ø先来先服务、短作业优先、响应比高优先作业调度算法思想(II)
Ø优先级调度算法思想(I)
●图形用户界面和操作方法
Ø字符用户界面、图形用户界面的基本特点(I)
Ø常见操作系统的使用(Windows,Linux)(II)
2.2.2程序设计语言和语言处理程序的基础知识
●语言翻译基础知识
Ø语言翻译的基本概念(I)
Ø汇编的含义和基本过程(I)
Ø编译的基本过程及编译各阶段的基本任务(I)
Ø解释的含义和基本过程(I)
Ø正规表达式的定义(II)
●程序设计语言的基本成分:
数据、运算、控制和传输
Ø程序设计语言的数据(数据类型)、运算(运算符和表达式)和语句的类型和功能(I)
Ø函数的参数传递机制:
传值、传地址(II)
●程序语言类型和特点
Ø过程式程序语言、面向对象程序设计语言、函数式程序设计语言、逻辑程序设计语言的基本特点(I)
Ø脚本语言的概念和基本特点(I)
2.3网络基础知识
●网络的功能、分类、组成和拓扑结构
Ø通信子网和资源子网的概念(I)
Ø局域网、城域网和广域网的概念(I)
Ø星形网、树形网、环形网和总线网的概念(I)
●基本的网络协议与标准
Ø物理层、数据链路层、网络层、传输层、应用层的基本概念(I)
ØTCP/IP协议及相关协议的功能(I)
●常用网络设备与网络通信设备的作用和特点
Ø中继器、集线器(HUB)、网关、交换机、路由器、网桥的基本功能和特点(I)
Ø调制解调器的基本功能和特点(I)
●Client/Server结构和Browser/Server结构的基本概念和特点(I)
●局域网(LAN)基础知识(I)
●互联网(Internet)基础知识
Ø互联网的接入方式(I)
ØTCP/IP协议的属性设置(II)
Ø常用的互联网服务及协议(I)
ØIP地址的分类、计算(II)
Ø防火墙基本概念(I)
2.4数据库基础知识
●数据库管理系统的主要功能和特征
Ø数据库系统(DataBaseSystem,DBS)定义及组成(I)
Ø数据库管理系统(DataBaseManagementSystem,DBMS)功能、特征、组成(I),文件系统与数据库系统的差异(II)
●数据库模式(概念模式、外模式、内模式)
Ø概念模式(模式)、外模式(用户模式或子模式)、内模式(物理模式)的基本概念(II)
Ø三级模式和两级映像(模式/内模式映像、外模式/模式映像)的基本概念(II)
Ø数据的逻辑独立性和物理独立性的基本概念(II)
●数据模型,ER图
Ø层次模型、网状模型、关系模型、面向对象模型的基本概念(I)
Ø数据模型的三要素(数据结构、数据操作、数据的约束条件)的含义(I)
ØE-R模型基本概念(II);E-R图(E-R模型)向关系模型的转换的基本方法(II)
Ø实体中主键、候选键、外键的基本概念(II)
Ø一对一(1:
1)、一对多(1:
n)、多对多(m:
n)联系类型的含义(II)
Ø简单属性、复合属性、单值属性、多值属性、NULL属性、派生属性的含义(I)
●数据操作(关系运算)
Ø关系数据库、关系数据库模式基础知识(I)
Ø关系模型的实体完整性、参照完整性、用户定义完整性的基本概念(I)
Ø并、差、笛卡尔积、投影、选择关系运算的基本概念(II)
Ø扩展的关系运算中选择、投影、连接运算方法(I)
●数据库语言(SQL)
Ø数据定义语言(DDL):
CREATETABLE(创建表)的应用(II)
Ø数据操纵语言(DML):
SELECT(查询)、INSERT(插入)、DELETE(删除)和UPDATE(修改)的应用(II)
Ø完整性(integrity)定义:
PRIMARYKEY、FOREIGNKEYREFERENCES使用方法(II)
Ø权限管理:
GRANT和REVORK使用方法(II)
●数据库的主要控制功能(并发控制,安全控制)
Ø事务的基本概念、事务的特性、故障的类型(I)
Ø数据不一致性(丢失修改、不可重复读、读脏数据)的基础知识(I)
Ø并发控制中活锁/死锁、可串行性、两段锁协议的基本概念(I)
Ø安全控制(权限机制、视图机制、加密机制)的基本概念(I)
2.5多媒体基础知识
●多媒体基本知识
Ø多媒体的概念,感觉媒体、表示媒体、表现媒体、存储媒体和传输媒体的基本概念(I)
Ø多媒体的特征:
多样性、集成性、交互性、非线性、实时性、信息使用的方便性和信息结构的动态性方面的基本概念(I)
Ø声音信号、声音信号的数字化、波形声音的基本概念(I)
Ø色彩的三基色、彩色空间、三要素(亮度、色调和色饱)基本概念(I)
Ø图形和图像的基本概念(I)
Ø图像分辨率与显示分辨率、像素深度、真/伪彩色,图像的压缩标准的基本概念(I)
●常用多媒体设备性能特征,常用多媒体文件格式类型
Ø多媒体计算机系统的硬件组成方面的基础知识(I)
Ø常用多媒体设备、性能及特征方面的基础知识(I)
Ø常见的声音、图形图像、视频文件类型(I)
2.6系统性能指标
●响应时间、吞吐量、周转时间基本概念(I)
●可靠性、可维护性、可扩充性、可移植性、可用性、可重用性、安全性基本概念(I)
2.7计算机应用基础知识
●计算机常用办公软件操作方法
Ø字处理软件Word的常用功能及操作(I)
Ø表处理软件Excel的常用功能及操作(I)
●计算机的应用
Ø计算机在信息管理、数据处理的应用范围及相关技术,以及在辅助设计、自动控制、科学计算、人工智能等领域的应用(I)
●远程通信服务(I)
3.系统开发和运行知识
3.1软件工程和项目管理基础知识
●软件开发生存周期各阶段的目标和任务(可行性分析和项目开发计划、需求分析、软件设计、编码、测试、维护)(I)
●软件能力成熟度模型CMM、统一过程(UP)、极限编程(XP)的基本概念(I)
●软件开发项目管理(成本估算、风险分析、进度管理(Gantt图、PERT图)、人员管理)基本概念(I)
●结构化方法、面向对象方法的基本概念(II)
●软件工具与软件开发环境(分析工具、设计工具、编程工具、测试工具、维护工具、CASE)(I)
●软件质量管理基础知识(软件质量特性(ISO/IEC9126软件质量模型、软件质量保证)(I)
3.2系统分析设计基础知识
●数据流图(DFD)、实体联系图(ER图)的基本概念(I)
●面向对象设计、以过程为中心的设计、以数据为中心的设计方法的基本概念(I)
●结构化分析方法(数据流图的基本构成、数据字典、加工逻辑的描述(结构化语言、决策表、决策树))(I)
●结构化设计方法(数据流的类型、结构化设计的基本步骤)(I)
●软件详细设计(模块设计、代码设计的基本原则、输入/输出设计的基本原则、用户界面设计的基本原则)(I)
3.3程序设计基础知识
●结构化程序设计方法
Ø自顶向下、逐步求情的设计理念,三种基本控制结构(I)
●使用流程图、NS图、PAD图进行处理过程的设计(II)
●程序设计风格
源程序中的内部文档、数据说明、语句构造、输入输出、效率(II)
3.4程序测试基础知识
●程序测试的目的、原则、对象、过程与工具(I)
●用黑盒法设计测试用例
Ø等价类划分、边界值划分、错误推测、因果图(II)
●用白盒法设计测试用例
Ø逻辑覆盖、循环覆盖、基本路径测试(II)
●测试设计和管理(I)
3.5程序设计文档基础知识
●接口的描述、程序逻辑的描述、程序规格说明书(I)
●模块测试计划、模块测试用例、模块测试报告(I)
3.6系统运行和维护基础知识
●系统运行管理基础知识(II)
●系统维护的类型和含义
Ø正确性维护、适应性维护、完善性维护、预防性维护(II)
4.信息安全基础知识
●信息系统安全基础知识
Ø计算机设备安全、软件安全、网络安全、信息安全的基本概念(I)
●信息系统安全管理
Ø防治计算机病毒、防范计算机犯罪、访问控制、防闯入、防灾、安全保密措施(I)
●加密与解密基础知识
Ø常用的加密方法和解密方法(I)
5.标准化基础知识
●标准化基本概念
Ø标准化的目的、意义,组织机构、内容、分类、代号与编号规定(I)
●标准的层次
Ø国际标准、国家标准、行业标准、企业标准的表示方法(II)
●相关标准的基本概念
Ø代码标准(汉字编码标准)、文件格式标准、安全标准、软件开发规范和文档标准、互联网相关标准的基本概念(I)
6.信息化基础知识
●信息、信息资源、信息化、信息工程、信息产业、信息技术的含义(I)
●全球信息化趋势,国家信息化战略,企业信息化战略和策略常识(I)
●有关的法律、法规要点
Ø软件著作权的概念(II)
Ø软件著作权主体与客体、权利内容、权利归属(II)
Ø发表权、署名权、修改权、复制权、发行权、翻译权(I)
Ø专利法、商标法、商业秘密权(I)
Ø专利法、商标法、商业秘密权对软件的保护知识(I)
●企业信息资源管理常识(I)
7.计算机专业英语
●具有助理工程师/技术员所要求的英语阅读水平(I)
●掌握本领域的英语基本术语(I)
考试科目2:
程序设计
1.内部设计
1.1理解外部设计
1.2软件功能划分和确定结构
●数据流图(DFD),结构图(I)
1.3物理数据设计
●确定数据组织方式、存储介质,设计记录格式,处理方式(I)
1.4详细输入输出设计
●界面设计、报表设计等(II)
1.5内部设计文档
●程序接口、程序功能、人机界面、输入输出、程序流程图、测试计划(II)
1.6内部设计评审
2.程序设计
2.1模块划分(原则、方法、标准)
2.2编写程序设计文档
●模块规格说明书(程序处理逻辑,输入输出数据格式)(II)
●测试要求说明书(测试类型和目标,测试用例,测试方法)(II)
2.3程序设计评审
3.程序实现
3.1编程
●编程方法和规范(I)
●程序设计语言的选择和使用(I)
●人工走查(II)
●程序文档化(II)
3.2程序测试
●测试环境和测试工具的选择和使用(I)
●测试数据的设计(II)
●测试报告的编写(I)
4.程序设计语言(C语言为必选,再在C、C++、Java语言中任选一种)
4.1C程序设计语言
●语法,程序结构(III)
●基本类型数据的定义和声明(III)
●数组、结构体、共用体类型数据的定义和声明(III)
●表达式和可执行语句(III)
●函数定义和调用,标准库函数的使用(III)
●指针的使用(II)
●文件的基本操作(III)
4.2C++程序设计语言
●面向对象程序设计与C++基本语法
Ø面向对象程序设计的基本概念与术语(I)
ØC++基本数据类型、各种表达式与语句(III)
ØC++的数组、结构、指针以及函数的使用(III)
●类、成员、构造函数(Constructor)、析构函数(Destructor)
ØC++类的声明、定义与使用(III)
ØC++对象的构造、使用与销毁(III)
●模板、继承、多态
ØC++类与函数模板的概念、定义与应用(III)
ØC++中继承的相关概念与应用(III)
ØC++中运算符与函数的重载(III)
●异常处理
ØC++异常处理机制的概念与应用(III)
●类库
ØC++标准类库中的容器库的应用(II)
ØC++标准类库中算法库的应用(II)
ØC++标准类库中的迭代器的应用(II)
ØC++标准类库中的字符串的应用(III)
ØC++标准类库中的流与文件的应用(III)
4.3Java程序设计语言
●面向对象程序设计
Ø面向对象程序设计的基本概念与术语(I)
●Java语言概述
ØJava语言的特点(I)
ØJava语言的开发环境与配置(II)
●语言机制(语法和程序结构,类、成员、构造函数(Constructor)、继承、异常处理)
Ø基本数据类型及其运算与基础类库(III)
Ø控制结构(III)
Ø数组(III)
Ø类的定义与应用(III)
Ø对象的构造与使用(III)
Ø包的概念与应用(II)
Ø继承机制的应用(III)
Ø接口与内部类的应用(II)
Ø错误与异常处理机制(III)
●Java类库、线程、输入/输出流
ØAWT、Swing用户界面与事件处理机制(I)
Ø流与文件的应用(III)
Ø多线程的开发与应用(II)
Ø集合类库的应用(II)
Ø网络、数据库的开发与应用(II)
●JavaApplets,Java应用程序
ØJava应用程序与JavaApplets的区别(I)
ØJavaApplets开发与部署(I)
三、样题举例
考试科目1:
计算机与软件工程基础知识(样题)
1.使用常用文字编辑工具编辑正文时,为改变该文档的文件名,常选用
(1)命令;将正文中所有“Computer”改写为“计算机”,常选用
(2)命令。
(1)A.“文件”→“另存为”B.“文件”→“保存”
C.“插入”→“对象”D.“工具”→“选项”
(2)A.“编辑”→“查找”B.“编辑”→“替换”
C.“编辑”→“定位”D.“文件”→“搜索”
2.在以下关于电子邮件的叙述中,“(3)”是不正确的。
(3)A.打开来历不明的电子邮件附件可能会传染计算机病毒
B.在网络拥塞的情况下,发送电子邮件后,接收者可能过几个小时后才能收到
C.在试发电子邮件时,可向自己的Email邮箱发送一封邮件
D.电子邮箱的容量指的是用户当前使用的计算机上,分配给电子邮箱的硬盘容量
3.某数值编码为FFH,若它所表示的真值为-127,则它是用(4)表示的;若它所表示的真值为-1,则它是用(5)表示的。
(4)A.原码B.反码C.补码D.移码
(5)A.原码B.反码C.补码D.移码
4.堆栈最常用于(6)。
(6)A.实现数据循环移位B.实现程序转移
C.保护被中断程序的现场D.数据的输入输出缓冲存储器
5.对于一个具有容错能力的系统,(7)是错误的。
(7)A.通过硬件冗余来设计系统,可以提高容错能力
B.在出现一般性故障时,具有容错能力的系统可以继续运行
C.容错能力强的系统具有更高的可靠性
D.容错是指允许系统运行时出现错误的处理结果
6.(8)用于把摄影作品、绘画作品输入到计算机中,进而对这些图像信息进行加工处理、管理、使用、存储和输出。
(8)A.打印机B.投影仪C.绘图仪D.扫描仪
7.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序员 培训 指南
![提示](https://static.bdocx.com/images/bang_tan.gif)