店铺推荐
【内容】
本书作为中级职称的全国计算机技术与软件专业技术资格(水平)考试(简称“软考”)指定教材,具有比较权威的指导意义。本书根据《软件设计师考试大纲》(2018年审定通过)的重点内容,组织了12章的内容,考生在学习教材内容的同时,还须对照考试大纲,认真学习和复习大纲的知识点。本书是在《软件设计师考试大纲》的指导下,对《软件设计师教程(第4版)》进行了认真修编,部分章节是重写后形成的。在本书中,强化了软件工程部分的知识,增加了Web应用系统分析与设计知识。本书适合参加本级别考试的考生和大学在校生作为教材。
【目录】
第1章计算机网络概论1
1.1计算机系统基础知识1
1.1.1计算机系统硬件基本组成1
1.1.2中央处理单元1
1.1.3数据表示4
1.1.4校验码10
1.2计算机体系结构12
1.2.1计算机体系结构的发展12
1.2.2存储系统20
1.2.3输入/输出技术31
1.2.4总线结构35
1.3安全性、可靠性与系统性能评测
基础知识38
1.3.1计算机安全概述38
1.3.2加密技术和认证技术40
1.3.3计算机可靠性48
1.3.4计算机系统的性能评价51
第2章程序设计语言基础知识56
2.1程序设计语言概述56
2.1.1程序设计语言的基本概念56
2.1.2程序设计语言的基本成分61
2.2语言处理程序基础67
2.2.1汇编程序基本原理67
2.2.2编译程序基本原理69
2.2.3解释程序基本原理96
第3章数据结构99
3.1线性结构99
3.1.1线性表99
3.1.2栈和队列104
3.1.3串108
3.2数组、矩阵和广义表113
3.2.1数组113
3.2.2矩阵115
3.2.3广义表116
3.3树118
3.3.1树与二叉树的定义118
3.3.2二叉树的性质与存储结构119
3.3.3二叉树的遍历122
3.3.4线索二叉树125
3.3.5很优二叉树126
3.3.6树和森林130
3.4图133
3.4.1图的定义与存储134
3.4.2图的遍历138
3.4.3生成树及最小生成树140
3.4.4拓扑排序和关键路径143
3.4.5最短路径146
3.5查找149
3.5.1查找的基本概念149
3.5.2静态查找表的查找方法150
3.5.3动态查找表154
3.5.4哈希表161
3.6排序165
3.6.1排序的基本概念165
3.6.2简单排序165
3.6.3希尔排序168
3.6.4快速排序169
3.6.5堆排序170
3.6.6归并排序173
3.6.7基数排序174
3.6.8内部排序方法小结175
3.6.9外部排序176
第4章操作系统知识180
4.1操作系统概述180
4.1.1操作系统的基本概念180
4.1.2操作系统分类及特点181
4.1.3操作系统的发展185
4.2进程管理185
4.2.1基本概念185
4.2.2进程的控制189
4.2.3进程间的通信189
4.2.4管程193
4.2.5进程调度195
4.2.6死锁198
4.2.7线程202
4.3存储管理202
4.3.1基本概念203
4.3.2存储管理方案204
4.3.3分页存储管理205
4.3.4分段存储管理208
4.3.5段页式存储管理209
4.3.6虚拟存储管理211
4.4设备管理216
4.4.1设备管理概述216
4.4.2I/O软件217
4.4.3设备管理采用的相关技术218
4.4.4磁盘调度221
4.5文件管理224
4.5.1文件与文件系统224
4.5.2文件的结构和组织225
4.5.3文件目录227
4.5.4存取方法和存储空间的管理229
4.5.5文件的使用231
4.5.6文件的共享和保护231
4.5.7系统的安全与可靠性233
4.6作业管理234
4.6.1作业与作业控制235
4.6.2作业调度236
4.6.3用户界面238
第5章软件工程基础知识239
5.1软件工程概述239
5.1.1计算机软件240
5.1.2软件工程基本原理241
5.1.3软件生存周期243
5.1.4软件过程245
5.2软件过程模型247
5.2.1瀑布模型(WaterfallModel)248
5.2.2增量模型(Incremental
Model)249
5.2.3演化模型(Evolutionary
Model)250
5.2.4喷泉模型
(WaterFountainModel)252
5.2.5基于构件的开发模型
(Component-based
DevelopmentModel)252
5.2.6形式化方法模型(Formal
MethodsModel)253
5.2.7统一过程(UP)模型253
5.2.8敏捷方法(Agile
Development)254
5.3需求分析256
5.3.1软件需求256
5.3.2需求分析原则257
5.3.3需求工程257
5.4系统设计260
5.4.1概要设计261
5.4.2详细设计262
5.5系统测试262
5.5.1系统测试与调试262
5.5.2传统软件的测试策略264
5.5.3测试面向对象软件271
5.5.4测试Web应用272
5.5.5测试方法273
5.5.6调试276
5.6运行和维护知识278
5.6.1系统转换278
5.6.2系统维护概述279
5.6.3系统评价283
5.7软件项目管理284
5.7.1软件项目管理涉及的范围284
5.7.2软件项目估算287
5.7.3进度管理289
5.7.4软件项目的组织292
5.7.5软件配置管理294
5.7.6风险管理296
5.8软件质量300
5.8.1软件质量特性300
5.8.2软件质量保证302
5.8.3软件评审304
5.8.4软件容错技术306
5.9软件度量307
5.9.1软件度量分类307
5.9.2软件复杂性度量309
5.10软件工具与软件开发环境311
5.10.1软件工具311
5.10.2软件开发环境313
第6章结构化开发方法315
6.1系统分析与设计概述315
6.1.1系统分析概述315
6.1.2系统设计的基本原理317
6.1.3系统总体结构设计319
6.1.4系统文档323
6.2结构化分析方法325
6.2.1结构化分析方法概述325
6.2.2数据流图325
6.2.3数据字典(DD)335
6.3结构化设计方法337
6.3.1结构化设计的步骤337
6.3.2数据流图到软件体系结构的
映射338
6.4WebApp分析与设计340
6.4.1WebApp的特性341
6.4.2WebApp需求模型341
6.4.3WebApp设计344
6.5用户界面设计346
6.5.1用户界面设计的黄金原则346
6.5.2用户界面的分析与设计348
6.5.3用户界面设计问题349
第7章面向对象技术351
7.1面向对象基础351
7.1.1面向对象的基本概念351
7.1.2面向对象分析354
7.1.3面向对象设计355
7.1.4面向对象程序设计357
7.1.5面向对象测试362
7.2UML363
7.2.1事物364
7.2.2关系365
7.2.3UML中的图366
7.3设计模式378
7.3.1设计模式的要素378
7.3.2创建型设计模式379
7.3.3结构型设计模式384
7.3.4行为设计模式394
7.3.5应用举例407
第8章算法设计与分析416
8.1算法设计与分析的基本概念416
8.1.1算法416
8.1.2算法设计416
8.1.3算法分析417
8.1.4算法的表示417
8.2算法分析基础417
8.2.1时间复杂度417
8.2.2渐进符号418
8.2.3递归式419
8.3分治法422
8.3.1递归的概念422
8.3.2分治法的基本思想423
8.3.3分治法的典型实例423
8.4动态规划法427
8.4.1动态规划法的基本思想427
8.4.2动态规划法的典型实例428
8.5贪心法433
8.5.1贪心法的基本思想433
8.5.2贪心法的典型实例434
8.6回溯法437
8.6.1回溯法的算法框架437
8.6.2回溯法的典型实例440
8.7分支限界法445
8.8概率算法446
8.9近似算法448
8.10数据挖掘算法448
8.11智能优化算法450
第9章数据库技术基础455
9.1基本概念455
9.1.1数据库与数据库系统455
9.1.2数据库管理系统的功能456
9.1.3数据库管理系统的特征及分类457
9.1.4数据库系统的体系结构458
9.1.5数据库的三级模式结构461
9.1.6大数据463
9.2数据模型466
9.2.1基本概念466
9.2.2数据模型的三要素466
9.2.3E-R模型466
9.2.4数据模型472
9.2.5关系模型473
9.3关系代数474
9.3.1关系数据库的基本概念474
9.3.25种基本的关系代数运算478
9.3.3扩展的关系代数运算481
9.4关系数据库SQL语言简介489
9.4.1SQL数据库体系结构490
9.4.2SQL的基本组成490
9.4.3SQL数据定义491
9.4.4SQL数据查询496
9.4.5SQL数据更新504
9.4.6SQL访问控制505
9.4.7嵌入式SQL507
9.5关系数据库的规范化508
9.5.1函数依赖508
9.5.2规范化509
9.5.3模式分解及分解应具有的特性511
9.6数据库的控制功能512
9.6.1事务管理512
9.6.2数据库的备份与恢复513
9.6.3并发控制514
第10章网络与信息安全基础知识517
10.1网络概述517
10.1.1计算机网络的概念517
10.1.2计算机网络的分类520
10.1.3网络的拓扑结构521
10.1.4ISO/OSI网络体系结构523
10.2网络互连硬件526
10.2.1网络的设备526
10.2.2网络的传输介质529
10.2.3组建网络531
10.3网络的协议与标准534
10.3.1网络的标准534
10.3.2局域网协议536
10.3.3广域网协议541
10.3.4TCP/IP协议族544
10.4Internet及应用549
10.4.1Internet概述550
10.4.2Internet地址550
10.4.3Internet服务558
10.5信息安全基础知识564
10.6网络安全概述568
第11章标准化和软件知识产权基础知识573
11.1标准化基础知识573
11.1.1基本概念573
11.1.2信息技术标准化579
11.1.3标准化组织581
11.1.4ISO9000标准简介584
11.1.5ISO/IEC15504过程评估
标准简介587
11.2知识产权基础知识588
11.2.1基本概念589
11.2.2计算机软件著作权592
11.2.3计算机软件的商业秘密权603
11.2.4专利权概述605
11.2.5企业知识产权的保护610
第12章软件系统分析与设计612
12.1结构化分析与设计612
12.1.1需求说明614
12.1.2结构化分析614
12.1.3总体设计616
12.1.4详细设计617
12.2数据库分析与设计618
12.2.1数据库设计的策略与步骤618
12.2.2需求分析619
12.2.3概念结构设计621
12.2.4逻辑结构设计623
12.2.5数据库的物理设计625
12.2.6数据库的实施与维护628
12.2.7案例分析631
12.3面向对象分析与设计635
12.3.1面向对象分析与设计的步骤636
12.3.2需求说明637
12.3.3建模用例637
12.3.4建模活动638
12.3.5设计类图640
12.3.6建模对象状态642
12.3.7建模交互643
12.4算法分析与设计645
12.4.1C程序设计语言与实现646
12.4.2算法设计与实现659
12.5面向对象的程序设计与实现672
12.5.1设计与实现方法672
12.5.2设计模式的应用672
返回顶部