简介
本书主要介绍如何用C#开发Windows窗体网络应用程序。全书分3部分
,第1部分(第1章~第4章)介绍网络编程预备知识,包括进程管理、多线程
处理、IP地址转换、DNS、套接字、数据流、网络数据编码与解码等;第2
部分(第5章~第9章)介绍协议类基本编程技术,包括TCP、UDP、FTP、HTTP
、SMTP、POP3等应用编程技术;第3部分(第10章~第12章)介绍协议类应用
开发技术,包括P2P应用开发、网络数据加解密技术等,最后用一个网络综
合应用开发实例作为对本书编程技术的总结。
本书提供配套的PPT课件、所有例题与习题的源程序以及全部习题参考
解答。
本书可作为高等院校计算机及相关专业的教材,也可作为初、中级程
序员的参考用书。
目录
第1篇 预备知识
第1章 概述
1.1 VS2008开发环境与C#应用程序开发模型
1.1.1 开发环境与安装要求
1.1.2 C#应用程序开发模型
1.2 网络通信模式与网络协议
1.2.1 分散式、集中式与分布式
1.2.2 C/S模型
1.2.3 B/S模型
1.2.4 P2P模型
1.2.5 TCP/IP网络协议
习题
第2章 进程与线程
2.1 进程与线程的基本概念
2.2 进程管理(Process类)
2.2.1 获取进程信息
2.2.2 启动和停止进程
2.3 线程管理(Thread类)
2.3.1 前台线程与后台线程
2.3.2 线程的基本操作
2.3.3 Volatile关键字
2.3.4 在一个线程中访问另一个线程的控件
2.4 线程同步与线程池
2.4.1 线程的优先级
2.4.2 线程同步
2.4.3 lock语句
2.4.4 线程池
2.5 BackgroundWorker组件
习题
第3章 IP地址转换与网卡信息检测
3.1 IP地址转换与域名解析
3.1.1 IP地址与端口
3.1.2 IP地址转换相关类
3.1.3 域名解析
3.2 网卡信息与网络流量检测
3.2.1 网卡信息检测相关类
3.2.2 网络流量检测相关类
3.2.3 Ping及其相关类
3.3 网络数据编码与解码
3.3.1 Encoding类
3.3.2 Encoder类和Decoder类
习题
第4章 套接字与数据流
4.1 套接字
4.1.1 面向连接的套接字
4.1.2 无连接的套接字
4.2 数据流
4.2.1 文件流
4.2.2 内存流
4.2.3 网络流
4.2.4 StreamWriter类与StreamReader类
4.2.5 BinaryReader类与BinaryWriter类
习题
第2篇 网络协议类基本编程技术
第5章 TCP应用编程
5.1 TCP应用编程概述
5.1.1 TCP简介
5.1.2 TcpListener类与TcpClient类
5.1.3 TCP应用编程的一般步骤
5.1.4 TCP的无消息边界问题
5.2 利用同步TCP编写网络聊天程序
5.2.1 服务器端编程
5.2.2 客户端编程
5.3 利用同步TCP编写网络游戏
5.3.1 服务器端编程
5.3.2 客户端编程
5.4 异步TCP应用编程
5.4.1 异步设计模式概述
5.4.2 异步TCP应用编程的一般方法
5.4.3 使用异步方式调用同步方法
5.5 异步TCP编程举例
5.5.1 服务器端编程
5.5.2 客户端编程
习题
第6章 UDP应用编程
6.1 UDP与TCP的区别
6.2 UDP应用编程技术
6.2.1 UdpClient类
6.2.2 同步发送和接收数据
6.2.3 异步发送和接收数据
6.3 利用UDP进行广播和组播
6.3.1 广播和组播的基本概念
6.3.2 加入和退出组播组
6.3.3 利用广播和组播实现群发功能
6.4 利用UDP编写网络会议程序
习题
第7章 FTP应用编程
7.1 FTP概述
7.1.1 FTP的工作原理
7.1.2 FTP的数据传输方式
7.1.3 文件传输模式
7.2 FTP规范
7.2.1 FTP命令
7.2.2 FTP响应码
7.3 FTP编程相关类
7.3.1 FtpWebRequest类
7.3.2 FtpWebResponse类
7.3.3 NetworkCredential类
7.4 FTP编程举例
7.4.1 服务器端编程
7.4.2 客户端编程
习题
第8章 HTTP应用编程
8.1 HTTP简介
8.1.1 HTTP的特点
8.1.2 HTTP的请求与响应
8.2 HTTP编程相关类
8.2.1 WebRequest类和HttpWebRequest类
8.2.2 WebResponse类和HttpWebResponse类
8.2.3 Uri类
8.2.4 利用GET方法提交请求的数据
8.2.5 利用POST方法提交请求的数据
8.3 利用HTTP实现多线程文件下载
8.3.1 检测网络资源是否有效
8.3.2 设置下载数据的范围
8.3.3 多线程文件下载完整实现
习题
第9章 SMTP与POP3应用编程
9.1 SMTP简介
9.1.1 SMTP和ESMTP
9.1.2 与邮件服务器连接
9.1.3 邮件的发送过程
9.2 POP3简介
9.3 邮件收发相关的类
9.3.1 身份验证类(Network-Credential)
9.3.2 邮件地址类(MailAddress)
9.3.3 邮件信息类(MailMessage)
9.3.4 附件类(Attachment)
9.3.5 邮件发送类(SmtpClient)
9.3.6 邮件附加信息类
9.4 邮件收发举例
9.4.1 同步方式邮件收发处理
9.4.2 异步方式邮件收发处理
习题
第3篇 网络协议综合应用开发技术
第10章 P2P应用开发技术
10.1 P2P基本知识
10.1.1 Peer To Peer架构
10.1.2 P2P实现原理
10.2 对等名称解析协议
10.2.1 环境要求
10.2.2 对等节点名称和PNRP ID
10.2.3 群
10.2.4 PNRP名称注册与解析
10.3 PeertoPeer名称空间
10.3.1 Cloud类
10.3.2 PeerName类
10.3.3 PeerNameRegistration类
10.3.4 PeerNameResolver类
10.4 P2P视频聊天程序
10.4.1 Windows API摄像头接口
10.4.2 P2P视频聊天具体实现
习题
第11章 数据加密与解密技术
11.1 加密与解密相关的类
11.1.1 对称加密及其相关类
11.1.2 不对称加密及其相关类
11.1.3 加密流
11.1.4 密钥容器
11.2 加密与解密的具体实现
11.2.1 字符串的加密与解密
11.2.2 一般文件的加密与解密
11.2.3 XML文件的加密与解密
11.3 网络应用中数据的加密与解密
11.4 Hash算法与数字签名
习题
第12章 网络应用开发综合实例
12.1 单机图形图像绘制方法
12.1.1 将图形图像作为对象
12.1.2 鼠标事件处理
12.1.3 绘制任意大小的基本图形
12.1.4 绘制任意形状的曲线
12.1.5 绘制任意大小和方向旋转的文字
12.1.6 绘制任意大小的图像
12.1.7 句柄的设计和处理
12.1.8 鼠标指针状态控制
12.2 多机联合绘图架构设计
12.2.1 系统概述
12.2.2 类设计
12.2.3 主机与附机
12.3 多机联合绘图系统具体实现
12.3.1 画板设计
12.3.2 多机同步控制
12.3.3 绘图对象的序列化与反序列化
12.3.4 图像的打印和预览
12.3.5 导出图像
12.3.6 完整实现及扩展建议
习题
第1章 概述
1.1 VS2008开发环境与C#应用程序开发模型
1.1.1 开发环境与安装要求
1.1.2 C#应用程序开发模型
1.2 网络通信模式与网络协议
1.2.1 分散式、集中式与分布式
1.2.2 C/S模型
1.2.3 B/S模型
1.2.4 P2P模型
1.2.5 TCP/IP网络协议
习题
第2章 进程与线程
2.1 进程与线程的基本概念
2.2 进程管理(Process类)
2.2.1 获取进程信息
2.2.2 启动和停止进程
2.3 线程管理(Thread类)
2.3.1 前台线程与后台线程
2.3.2 线程的基本操作
2.3.3 Volatile关键字
2.3.4 在一个线程中访问另一个线程的控件
2.4 线程同步与线程池
2.4.1 线程的优先级
2.4.2 线程同步
2.4.3 lock语句
2.4.4 线程池
2.5 BackgroundWorker组件
习题
第3章 IP地址转换与网卡信息检测
3.1 IP地址转换与域名解析
3.1.1 IP地址与端口
3.1.2 IP地址转换相关类
3.1.3 域名解析
3.2 网卡信息与网络流量检测
3.2.1 网卡信息检测相关类
3.2.2 网络流量检测相关类
3.2.3 Ping及其相关类
3.3 网络数据编码与解码
3.3.1 Encoding类
3.3.2 Encoder类和Decoder类
习题
第4章 套接字与数据流
4.1 套接字
4.1.1 面向连接的套接字
4.1.2 无连接的套接字
4.2 数据流
4.2.1 文件流
4.2.2 内存流
4.2.3 网络流
4.2.4 StreamWriter类与StreamReader类
4.2.5 BinaryReader类与BinaryWriter类
习题
第2篇 网络协议类基本编程技术
第5章 TCP应用编程
5.1 TCP应用编程概述
5.1.1 TCP简介
5.1.2 TcpListener类与TcpClient类
5.1.3 TCP应用编程的一般步骤
5.1.4 TCP的无消息边界问题
5.2 利用同步TCP编写网络聊天程序
5.2.1 服务器端编程
5.2.2 客户端编程
5.3 利用同步TCP编写网络游戏
5.3.1 服务器端编程
5.3.2 客户端编程
5.4 异步TCP应用编程
5.4.1 异步设计模式概述
5.4.2 异步TCP应用编程的一般方法
5.4.3 使用异步方式调用同步方法
5.5 异步TCP编程举例
5.5.1 服务器端编程
5.5.2 客户端编程
习题
第6章 UDP应用编程
6.1 UDP与TCP的区别
6.2 UDP应用编程技术
6.2.1 UdpClient类
6.2.2 同步发送和接收数据
6.2.3 异步发送和接收数据
6.3 利用UDP进行广播和组播
6.3.1 广播和组播的基本概念
6.3.2 加入和退出组播组
6.3.3 利用广播和组播实现群发功能
6.4 利用UDP编写网络会议程序
习题
第7章 FTP应用编程
7.1 FTP概述
7.1.1 FTP的工作原理
7.1.2 FTP的数据传输方式
7.1.3 文件传输模式
7.2 FTP规范
7.2.1 FTP命令
7.2.2 FTP响应码
7.3 FTP编程相关类
7.3.1 FtpWebRequest类
7.3.2 FtpWebResponse类
7.3.3 NetworkCredential类
7.4 FTP编程举例
7.4.1 服务器端编程
7.4.2 客户端编程
习题
第8章 HTTP应用编程
8.1 HTTP简介
8.1.1 HTTP的特点
8.1.2 HTTP的请求与响应
8.2 HTTP编程相关类
8.2.1 WebRequest类和HttpWebRequest类
8.2.2 WebResponse类和HttpWebResponse类
8.2.3 Uri类
8.2.4 利用GET方法提交请求的数据
8.2.5 利用POST方法提交请求的数据
8.3 利用HTTP实现多线程文件下载
8.3.1 检测网络资源是否有效
8.3.2 设置下载数据的范围
8.3.3 多线程文件下载完整实现
习题
第9章 SMTP与POP3应用编程
9.1 SMTP简介
9.1.1 SMTP和ESMTP
9.1.2 与邮件服务器连接
9.1.3 邮件的发送过程
9.2 POP3简介
9.3 邮件收发相关的类
9.3.1 身份验证类(Network-Credential)
9.3.2 邮件地址类(MailAddress)
9.3.3 邮件信息类(MailMessage)
9.3.4 附件类(Attachment)
9.3.5 邮件发送类(SmtpClient)
9.3.6 邮件附加信息类
9.4 邮件收发举例
9.4.1 同步方式邮件收发处理
9.4.2 异步方式邮件收发处理
习题
第3篇 网络协议综合应用开发技术
第10章 P2P应用开发技术
10.1 P2P基本知识
10.1.1 Peer To Peer架构
10.1.2 P2P实现原理
10.2 对等名称解析协议
10.2.1 环境要求
10.2.2 对等节点名称和PNRP ID
10.2.3 群
10.2.4 PNRP名称注册与解析
10.3 PeertoPeer名称空间
10.3.1 Cloud类
10.3.2 PeerName类
10.3.3 PeerNameRegistration类
10.3.4 PeerNameResolver类
10.4 P2P视频聊天程序
10.4.1 Windows API摄像头接口
10.4.2 P2P视频聊天具体实现
习题
第11章 数据加密与解密技术
11.1 加密与解密相关的类
11.1.1 对称加密及其相关类
11.1.2 不对称加密及其相关类
11.1.3 加密流
11.1.4 密钥容器
11.2 加密与解密的具体实现
11.2.1 字符串的加密与解密
11.2.2 一般文件的加密与解密
11.2.3 XML文件的加密与解密
11.3 网络应用中数据的加密与解密
11.4 Hash算法与数字签名
习题
第12章 网络应用开发综合实例
12.1 单机图形图像绘制方法
12.1.1 将图形图像作为对象
12.1.2 鼠标事件处理
12.1.3 绘制任意大小的基本图形
12.1.4 绘制任意形状的曲线
12.1.5 绘制任意大小和方向旋转的文字
12.1.6 绘制任意大小的图像
12.1.7 句柄的设计和处理
12.1.8 鼠标指针状态控制
12.2 多机联合绘图架构设计
12.2.1 系统概述
12.2.2 类设计
12.2.3 主机与附机
12.3 多机联合绘图系统具体实现
12.3.1 画板设计
12.3.2 多机同步控制
12.3.3 绘图对象的序列化与反序列化
12.3.4 图像的打印和预览
12.3.5 导出图像
12.3.6 完整实现及扩展建议
习题
C# network application programming
- 名称
- 类型
- 大小
光盘服务联系方式: 020-38250260 客服QQ:4006604884
云图客服:
用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问
Video Player
×
Audio Player
×
pdf Player
×