《网络程序设计与开发》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:鲁斌,李莉编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2010
  • ISBN:9787302229186
  • 页数:375 页
图书介绍:本书是网络程序设计方面的一本综合、全面、实用的教材,涵盖了现有各种主要的网络程序设计技术。

第1章 绪论 1

1.1 网络编程基础 1

1.1.1 网络应用程序所处的地位 1

1.1.2 网间进程通信面临的问题 1

1.1.3 网间进程的标识 2

1.2 基本网络协议 4

1.2.1 一般特点 4

1.2.2 用户数据报协议 5

1.2.3 传输控制协议 5

1.3 客户机/服务器模型 6

1.3.1 模型的重要性 6

1.3.2 容易混淆的术语 7

1.3.3 模型工作过程与特点 7

1.3.4 C/S交互方式 9

1.4 网络编程分类 10

1.4.1 基于TCP/IP协议栈的网络编程 10

1.4.2 基于Web应用的网络编程 10

1.4.3 基于.NET的Web Services网络编程 10

1.4.4 .NET Remoting技术 12

1.4.5 电话应用编程接口(TAPI) 13

1.4.6 信报应用编程接口(MAPI) 14

1.4.7 Internet服务器应用编程接口 14

1.5 本章小结 15

1.6 习题 15

第2章 Windows套接字 17

2.1 Socket及其来源 17

2.2 套接字的类型 17

2.2.1 流式套接字 18

2.2.2 数据报套接字 18

2.2.3 原始套接字 18

2.3 套接字规范 18

2.3.1 Berkeley套接字规范 18

2.3.2 Windows套接字规范 18

2.3.3 Windows套接字和Berkeley套接字的比较 19

2.4 几种典型的Windows套接字规范 22

2.4.1 Winsock 1.0 22

2.4.2 Winsock 1.1 22

2.4.3 Winsock 2.0 23

2.5 Winsock编程的一般模式 23

2.5.1 面向连接的编程模型 23

2.5.2 无连接编程模型 24

2.5.3 几个基本概念 24

2.6 基本操作函数 26

2.6.1 Winsock的启动和终止 26

2.6.2 Winsock的创建、绑定与关闭 28

2.6.3 通信连接的建立 34

2.6.4 数据的传输 37

2.6.5 Winsock的错误处理函数 44

2.6.6 Winsock的辅助函数 46

2.6.7 Winsock的信息查询函数 53

2.7 Winsock 2的新特性 59

2.7.1 对多协议的支持 59

2.7.2 对I/O与事件对象的重叠支持 59

2.7.3 套接口组 60

2.7.4 服务质量 61

2.8 Winsock 2新增函数一览 62

2.9 网络应用程序的运行环境 63

2.10 本章小结 64

2.11 习题 65

第3章 MFC Winsock类编程 66

3.1 MFC简介 66

3.1.1 MFC编程框架 66

3.1.2 MFC对象和Windows对象的关系 67

3.1.3 消息映射的实现 68

3.1.4 MFC应用程序的执行过程 71

3.2 CAsyncSocket类 72

3.2.1 基本编程模型 72

3.2.2 创建CAsyncSocket类对象 74

3.2.3 CAsyncSocket类可以接收并处理的消息事件 75

3.2.4 连接的请求与接受 76

3.2.5 数据的发送与接收 79

3.2.6 关闭套接字 80

3.2.7 其他成员函数 81

3.3 基于CAsyncSocket类的单点聊天程序 82

3.3.1 实现目标 82

3.3.2 创建客户机程序 82

3.3.3 客户机程序的类与消息驱动 90

3.3.4 客户机程序主要功能的代码和分析 91

3.3.5 创建服务器程序 99

3.3.6 服务器程序的流程和消息驱动 101

3.3.7 点对点聊天的服务器程序主要功能的代码和分析 101

3.4 CSocket类 109

3.4.1 基本编程模型 110

3.4.2 创建CSocket类对象 111

3.4.3 连接的建立 112

3.4.4 数据的收发 112

3.4.5 关闭套接字和清除相关对象 112

3.5 基于CSocket类的多点聊天程序 112

3.5.1 聊天室程序的功能 112

3.5.2 创建聊天室的服务器程序 113

3.5.3 聊天室服务器程序的主要实现代码和分析 116

3.5.4 创建聊天室的客户机程序 127

3.5.5 聊天室客户机程序的主要实现代码和分析 129

3.6 本章小结 139

3.7 习题 139

第4章 WinInet编程 141

4.1 WinInet API的一般化问题 141

4.1.1 HINTERNET句柄 141

4.1.2 WinInet中错误的处理 142

4.1.3 WinInet函数中的缓冲区参数 142

4.1.4 WinInet函数的异步操作模式 142

4.2 基本WinInet函数 143

4.2.1 打开一个WinInet会话 143

4.2.2 与服务器建立连接 144

4.2.3 回调函数 145

4.2.4 通用文件操作 147

4.2.5 从Internet文件读数据 149

4.2.6 向Internet文件写数据 150

4.2.7 移动Internet文件指针 150

4.2.8 数据可用性查询 151

4.2.9 其他基本函数 151

4.3 FTP客户机WinInet函数 152

4.3.1 一般步骤 152

4.3.2 查询FTP服务器上的文件和目录 152

4.3.3 查询或改变FTP服务器的当前目录 155

4.3.4 在FTP服务器上创建目录 157

4.3.5 在FTP服务器上删除目录 158

4.3.6 从FTP服务器中下载文件 159

4.3.7 向FTP服务器中上传文件 162

4.3.8 从FTP服务器中删除文件 163

4.3.9 重命名FTP服务器上的文件或目录 164

4.4 MFC WinInet类 165

4.4.1 概述 165

4.4.2 MFC WinInet所包含的类 166

4.4.3 基本编程模型 167

4.4.4 WinInet类简介 170

4.5 基于WinInet类的FTP客户机编程实例 179

4.5.1 程序要实现的功能 180

4.5.2 创建应用程序的过程 181

4.6 本章小结 192

4.7 习题 192

第5章 不同I/O模式下的处理方法 193

5.1 阻塞模式与非阻塞模式 193

5.1.1 阻塞模式及其优缺点 193

5.1.2 非阻塞模式及其优缺点 193

5.2 多进程与多线程 194

5.2.1 什么是多进程 194

5.2.2 什么是多线程 195

5.2.3 多进程和多线程的关系 195

5.2.4 网络编程采用多线程机制的重要性 196

5.3 I/O阻塞模式的多线程网络编程方法 197

5.3.1 MFC支持的两种线程 197

5.3.2 创建MFC的工作线程 198

5.3.3 创建并启动用户界面线程 201

5.3.4 终止线程 204

5.3.5 FTP客户机多线程编程实例 206

5.4 I/O非阻塞模式的异步处理模型 215

5.4.1 select模型 215

5.4.2 WSAAsyncSelect异步I/O模型 218

5.4.3 WSAEventSelect事件选择模型 222

5.4.4 其他模型 227

5.5 本章小结 228

5.6 习题 228

第6章 HTTP高级编程 230

6.1 HTTP 230

6.1.1 HTTP的基本概念 230

6.1.2 HTTP的应用 231

6.2 CHtmlView类基本知识 232

6.2.1 CHtmlView类与WebBrowser控件 232

6.2.2 CHtmlView类的成员函数 233

6.3 网络浏览器实例 239

6.3.1 程序实现的基本功能 239

6.3.2 程序实现的一般步骤 240

6.4 本章小结 245

6.5 习题 246

第7章 Winsock控件编程 247

7.1 Winsock控件的基本操作 247

7.1.1 Winsock控件的数据传输 247

7.1.2 Winsock控件的基本属性 247

7.1.3 Winsock控件的基本方法 248

7.1.4 Winsock控件的基本事件 248

7.2 电子邮件系统基本原理 249

7.2.1 邮件传输原理 250

7.2.2 电子邮件的地址 250

7.2.3 常用的几种电子邮件协议 250

7.3 简单电子邮件系统的实现过程 251

7.3.1 邮件服务器的实现 251

7.3.2 邮件客户端的实现 258

7.4 本章小结 265

7.5 习题 266

第8章 ASP.NET基础知识 267

8.1 ASP.NET简介 267

8.1.1 早期的Web开发 267

8.1.2 传统的ASP 269

8.1.3 ASP.NET 269

8.2 ASP.NET应用程序结构 270

8.2.1 ASP.NET应用程序元素 270

8.2.2 ASP.NET应用程序目录结构 271

8.2.3 ASP.NET的文件类型 271

8.3 Visual Studio 273

8.3.1 Visual Studio集成开发环境 273

8.3.2 网站和Web项目 276

8.3.3 创建无项目文件的网站 276

8.3.4 设计网页 277

8.3.5 编码模型 278

8.3.6 Web项目 281

8.4 本章小结 283

8.5 习题 283

第9章 ASP.NET常用控件与Page类 284

9.1 Web窗体 284

9.1.1 HTML标记 285

9.1.2 HTML控件 287

9.1.3 服务器控件标记 288

9.2 ASP.NET常用服务器控件 288

9.2.1 服务器控件的类型 288

9.2.2 所有控件的共同属性 289

9.2.3 标准服务器端控件 290

9.2.4 输入验证控件 296

9.2.5 用户控件 301

9.3 ASP.NET Page类 305

9.3.1 Page对象 305

9.3.2 Response对象和Request对象 309

9.3.3 Server对象 313

9.3.4 Session对象 315

9.3.5 Application对象 317

9.3.6 Cookie对象 319

9.4 本章小结 320

9.5 习题 321

第10章 数据访问 323

10.1 ADO.NET基础 325

10.2 基本ADO.NET类与存储过程 326

10.2.1 Connection类 326

10.2.2 Command类和DataReader类 328

10.2.3 DataSet类 331

10.2.4 DataAdapter类 333

10.2.5 存储过程 337

10.3 数据绑定 341

10.3.1 单值绑定 341

10.3.2 重复值绑定 343

10.3.3 数据源控件 345

10.3.4 联合使用数据源和数据绑定控件 346

10.4 本章小结 351

10.5 习题 352

第11章 案例——网络购物商城 353

11.1 需求分析 353

11.1.1 项目背景 353

11.1.2 需求定义 353

11.1.3 开发环境 354

11.2 软件设计 354

11.2.1 架构设计 355

11.2.2 数据库设计 355

11.2.3 界面设计 358

11.3 功能实现 360

11.3.1 MasterPages母版页实现 360

11.3.2 主页面实现 363

11.3.3 购物车的实现 367

11.3.4 详细信息实现 368

11.3.5 结算中心的实现 372

11.4 本章小结 374

参考文献 375