计算机系列教材TCP/IP网络编程项目式教程/唐四薪 本书特色
本书主要介绍基于Visual C 的WinSock网络编程,以项目实例的形式介绍了:网络编程概述、控制台版本的TCP通信程序、Windows对话框版本的TCP通信程序、异步通信版的TCP通信程序、UDP通信程序、原始套接字编程,MFC网络编程等。并介绍了网络编程的一些实例,如文件传输程序、秒杀软件、在线考试系统等。
计算机系列教材TCP/IP网络编程项目式教程/唐四薪 内容简介
本书主要介绍基于Visual C++的WinSock网络编程,以项目实例的形式介绍了:网络编程概述、控制台版本的TCP通信程序、Windows对话框版本的TCP通信程序、异步通信版的TCP通信程序、UDP通信程序、原始套接字编程,MFC网络编程等。并介绍了网络编程的一些实例,如文件传输程序、软件、在线考试系统等。
计算机系列教材TCP/IP网络编程项目式教程/唐四薪 目录
目录
第1章网络编程的实现原理1
1.1网络程序的类型与应用领域1
1.1.1网络程序的类型1
1.1.2网络程序的应用领域3
1.2套接字及其种类5
1.2.1什么是套接字5
1.2.2套接字的类型7
1.2.3网络字节顺序8
1.3Visual C 编程基础知识9
1.3.1Visual C 字符串处理函数9
1.3.2Visual C 新增的数据类型11
习题12第2章控制台版本的TCP通信程序13
2.1套接字编程基础13
2.1.1套接字编程步骤13
2.1.2套接字编程的准备工作14
2.1.3套接字编程中使用的函数16
2.1.4套接字建立连接与TCP三次握手19
2.2*基本的TCP通信程序20
2.2.1服务器端程序的编制21
2.2.2客户端程序的编制22
2.2.3WinSock的错误处理24
2.3UNIX Socket编程24
习题25第3章Win32 API版本的TCP通信程序27
3.1Windows对话框程序27
3.1.1新建对话框程序27
3.1.2处理Windows消息31
3.1.3获取和设置控件的内容33
3.2Windows API程序实例34
3.2.1计算器程序34
3.2.2获取主机名、IP地址和时间的程序37
3.3Win32 API版本的TCP通信程序实例38
3.3.1将控制台程序改造成Windows程序的方法38
3.3.2服务器端程序的编制40
3.3.3客户端程序的编制42
习题45第4章异步通信版本的TCP通信程序46
4.1阻塞与非阻塞模式46
4.1.1引起阻塞的WinSock函数46
4.1.2异步I/O模型47
4.1.3WSAAsyncSelect模型47
4.2异步通信版本的TCP通信程序实例50
4.2.1服务器端程序的编制50
4.2.2客户端程序的编制53
习题56第5章UDP通信程序57
5.1UDP通信程序的原理57
5.1.1UDP的通信模式58
5.1.2UDP的数据收发函数60
5.2控制台版本的UDP通信程序实例61
5.2.1服务器端程序的编制61
5.2.2客户端程序的编制62
5.3异步对等UDP通信程序实例63
5.4UDP广播消息的程序实例67
5.4.1设置套接字选项68
5.4.2UDP广播通信程序的编制70
习题74第6章MFC网络编程75
6.1MFC概述75
6.1.1MFC中的类75
6.1.2MFC程序的结构76
6.2MFC版本的计算器程序78
6.2.1设置成员变量79
6.2.2编写代码79
6.2.3在Visual Studio 2010中新建MFC程序81
6.3MFC版本的TCP异步通信程序实例83
6.3.1服务器端程序的编制83
6.3.2客户端程序的编制87
习题90第7章使用CAsyncSocket类和CSocket类92
7.1MFC Socket编程基础92
7.1.1CAsyncSocket类的函数92
7.1.2CAsyncSocket类编程的步骤95
7.2CSocket类版本的TCP通信程序实例95
7.2.1服务器端程序的编制96
7.2.2客户端程序的编制99
7.3CAsyncSocket类版本的TCP通信程序实例102
7.3.1服务器端程序的编制102
7.3.2客户端程序的编制106
习题109第8章TCP文件传输程序110
8.1控制台版本的TCP文件传输程序实例110
8.1.1服务器端程序的编制111
8.1.2客户端程序的编制113
8.2CFile类和CFileDialog类115
8.2.1CFile类的使用115
8.2.2CFileDialog类的使用116
8.2.3使用CFile类和CFileDialog类编制记事本程序118
8.3MFC版本的TCP文件传输程序实例119
8.3.1TCP文件传输程序的流程120
8.3.2服务器端程序的编制121
8.3.3客户端程序的编制125
习题129第9章网络用户登录程序130
9.1MFC访问数据库130
9.1.1访问数据库的原理130
9.1.2ADO访问数据库程序实例131
9.2单机版用户登录程序实例134
9.2.1程序的编制135
9.2.2查询数据库的实现137
9.2.3在用户登录界面与欢迎界面之间传递变量139
9.3网络版用户登录程序实例141
9.3.1服务器端程序的编制142
9.3.2客户端程序的编制146
习题149第10章TCP一对多通信程序150
10.1多线程程序的作用150
10.1.1进程与线程150
10.1.2创建线程的步骤151
10.2控制台版本的多线程TCP通信程序实例153
10.2.1服务器端程序的原理153
10.2.2服务器端程序的编制154
10.3MFC版本的多线程TCP通信程序实例156
10.3.1服务器端程序的原理156
10.3.2服务器端程序的编制157
习题162第11章使用select模型实现一对多通信163
11.1select模型基础163
11.1.1select模型的集合与事件163
11.1.2select模型编程的步骤164
11.2群聊软件实例165
11.2.1服务器端程序的原理166
11.2.2服务器端程序的编制167
11.3服务器远程监控系统实例172
习题175第12章在线考试系统176
12.1重叠I/O模型176
12.1.1WSAOVERLAPPED结构体176
12.1.2重叠I/O模型的常用函数178
12.1.3重叠I/O模型的编程框架180
12.1.4基于重叠I/O模型的TCP通信程序182
12.2I/O完成端口模型184
12.2.1使用I/O完成端口的编程流程185
12.2.2在线考试系统的设计186
习题189第13章网络嗅探软件190
13.1原始套接字概述190
13.1.1创建原始套接字190
13.1.2使用原始套接字收发数据191
13.2编制网络嗅探软件191
13.2.1网络嗅探软件的原理192
13.2.2网络嗅探软件的编制192
习题194附录APython版的TCP通信程序195附录BJava版的TCP通信程序197参考文献200**部分数 据 结 构
第1章绪论3
1.1数据结构的概念3
1.1.1数据结构的范畴3
1.1.2相关概念和术语4
1.2算法和算法分析7
1.2.1算法的基本概念7
1.2.2算法复杂度11
小结13
习题14第2章线性表15
2.1线性表的逻辑结构15
2.1.1线性表的定义15
2.1.2线性表的基本操作16
2.2线性表的顺序存储及运算实现17
2.2.1顺序存储的特点17
2.2.2顺序表上的运算实现17
2.3线性表的链式存储及运算实现21
2.3.1链式存储的特点22
2.3.2链表上的运算实现24
小结26
习题27第3章特殊线性表28
3.1栈28
3.1.1栈的定义28
3.1.2栈的存储及运算实现29
3.2队列31
3.2.1队列的定义31
3.2.2队列的存储及运算实现33
3.3串35
3.3.1串的定义35
3.3.2串的存储37
小结37
习题38第4章数组39
4.1数组的定义39
4.2数组的存储及运算实现40
小结42
习题42第5章树与二叉树43
5.1树43
5.1.1树的定义43
5.1.2相关术语44
5.2二叉树45
5.2.1二叉树的定义45
5.2.2二叉树的性质46
5.2.3二叉树的存储结构47
5.3二叉树的遍历48
小结50
习题50第6章图51
6.1图的定义和术语51
6.2图的存储表示53
6.3图的遍历55
小结57
习题58第7章查找59
7.1基本概念59
7.2静态查找表60
7.2.1顺序查找60
7.2.2折半查找61
7.2.3索引查找62
7.3动态查找表63
7.3.1二叉排序树64
7.3.2平衡二叉树66
7.4哈希表的查找66
小结69
习题69第8章排序70
8.1基本概念70
8.2插入排序71
8.2.1直接插入排序71
8.2.2希尔排序73
8.3交换排序74
8.3.1冒泡排序74
8.3.2快速排序76
8.4选择排序78
8.5归并排序79
小结81
习题82
第二部分数据库技术
第9章数据库系统概述85
9.1数据库系统的作用85
9.1.1数据与数据管理85
9.1.2数据库应用88
9.2数据库处理技术的发展过程91
9.2.1人工管理阶段91
9.2.2文件系统阶段92
9.2.3数据库系统阶段93
9.2.4高级数据库阶段95
9.3数据模型97
9.3.1概念模型97
9.3.2数据模型101
9.3.3层次模型103
9.3.4网状模型104
9.3.5关系模型106
9.3.6面向对象模型109
9.4数据库系统的结构111
9.4.1数据库系统的三级模式结构111
9.4.2数据库系统的二级映像113
9.4.3数据库体系结构114
9.5数据库管理系统117
9.5.1DBMS的工作模式117
9.5.2DBMS的主要功能118
9.5.3DBMS的组成119
小结120
习题121第10章关系模型与关系代数122
10.1关系模型122
10.2关系代数126
10.2.1集合的三种基本运算——交、并、差126
10.2.2关系的基本运算129
小结133
习题134第11章关系数据库标准语言——SQL135
11.1SQL概述及特点135
11.1.1SQL概述135
11.1.2SQL的特点136
11.1.3SQL的基本概念137
11.2SQL的数据定义138
11.2.1数据库的定义138
11.2.2基本表的定义141
11.2.3索引的定义147
11.3SQL的单表查询149
11.3.1SELECT语句概述149
11.3.2投影运算151
11.3.3选择运算153
11.3.4排序运算157
11.3.5查询表158
11.4SQL的连接查询159
11.4.1等值与非等值连接159
11.4.2自表连接162
11.4.3外连接163
11.5SQL的聚合查询166
11.5.1聚合函数166
11.5.2分组聚合167
11.6SQL的嵌套子查询169
11.6.1使用IN的子查询169
11.6.2使用比较运算符的子查询170
11.6.3使用存在量词EXISTS的子查询172
11.7集合运算173
11.8SQL的数据操纵174
11.8.1插入数据174
11.8.2更新数据176
11.8.3删除数据178
11.9视图179
11.9.1创建视图179
11.9.2查询视图181
11.9.3视图更新182
11.9.4删除视图183
小结184
习题184第12章数据库设计及优化189
12.1数据库设计方法189
12.1.1数据库和信息系统189
12.1.2数据库设计过程190
12.2需求分析192
12.2.1需求分析的任务192
12.2.2需求分析的步骤193
12.2.3需求分析的方法193
12.3概念结构设计195
12.3.1概念模型的基本概念195
12.3.2概念模型的表示方法195
12.3.3概念结构的特点196
12.3.4概念结构设计的方法197
12.3.5概念结构设计的步骤198
12.4规范化200
12.4.1关系模式规范化的必要性200
12.4.2函数依赖201
12.4.3范式与规范化203
12.4.4模式分解原则207
12.4.5规范化的本质分析与总结207
12.5逻辑结构设计208
12.5.1概念模型向关系模型的转换208
12.5.2数据模型的优化211
12.5.3数据库逻辑设计案例212
12.6数据库的物理设计214
12.6.1数据库物理设计的方法214
12.6.2确定数据库的物理结构215
12.6.3对物理结构进行评价216
12.7数据库的实施与维护216
12.7.1数据库的实施216
12.7.2数据库的维护218
小结219
习题219第13章数据库安全性与完整性221
13.1数据库安全性221
13.1.1数据库安全的基本概念221
13.1.2用户管理223
13.1.3角色管理225
13.2数据库完整性226
13.2.1完整性约束的概念和类型227
13.2.2完整性约束的管理228
13.3Transact?SQL基础233
13.3.1SQL对象的命名规则和注释233
13.3.2数据类型233
13.3.3变量237
13.3.4函数239
13.3.5批处理和流程控制242
13.4游标246
13.4.1游标的使用247
13.4.2当前游标集的修改250
13.5存储过程252
13.5.1存储过程概述252
13.5.2创建和执行存储过程252
13.5.3修改和删除存储过程254
13.6触发器255
13.6.1触发器概述255
13.6.2创建触发器256
13.6.3删除和修改触发器258
小结259
习题259第14章事务管理与恢复260
14.1事务260
14.1.1并发操作时产生的问题260
14.1.2事务的概念262
14.1.3事务的特性263
14.2并发控制264
14.3恢复与备份266
14.3.1数据库系统的故障266
14.3.2数据库备份267
14.3.3数据库恢复268
小结271
习题271第15章数据库应用开发272
15.1ADO.NET概述272
15.2系统分析276
15.2.1系统需求分析276
15.2.2系统用例分析277
15.2.3系统时序图278
15.3数据库分析和设计279
15.3.1数据库分析279
15.3.2数据库设计279
15.4数据库的连接和访问281
15.4.1数据库的连接281
15.4.2数据库的访问282
15.5系统界面设计及相关代码实现284
15.5.1酒店客房管理系统的首界面设计及其代码实现284
15.5.2客房信息管理界面的设计及其代码实现286
小结287参考文献288
计算机系列教材TCP/IP网络编程项目式教程/唐四薪 作者简介
唐四薪,中南大学计算机专业硕士研究生毕业,现为衡阳师范学院计算机科学与技术学院讲师,从事电子商务,生物信息学研究,从事电子商务专业课程教学四年,主讲《电子商务安全》课程三届。主持多项校级教研和科研课题,独立编著教材《基于Web标准的网页设计与制作》清华大学出版社出版,以第一作者身份在《生物数学学报》,《生物信息学》,《计算机系统应用》,《计算机工程与科学》等杂志发表论文多篇,有丰富的网络安全经验。