21世纪高等学校规划教材·计算机科学与技术C#网络程序开发(第2版)/何波
- ISBN:9787302506768
- 装帧:一般胶版纸
- 册数:暂无
- 重量:暂无
- 开本:其他
- 页数:203
- 出版时间:2019-01-01
- 条形码:9787302506768 ; 978-7-302-50676-8
本书特色
《C#网络程序开发(第二版)》涵盖C#网络程序开发的理论、实验和课程设计。课程设计部分包括课程设计目的求和题目等。实验部分以理论课例程为基础进行扩展和提高,有利于激发学习兴趣。 遵循由浅入深,逐步深入的原则,本书提供配套的课件和源程序。可作为高等院校计算机及相关专业的教材。
内容简介
本书是C#网络程序开发的经典教材,涵盖C#网络程序开发的理论、实验和课程设计。全书共包含五大部分:靠前部分为C#网络程序开发基础,包括网络程序开发基础知识和C#网络程序开发基础; 第二部分为C#网络传输程序开发,包括TCP、UDP和P2P网络程序开发技术; 第三部分为Internet应用程序开发,包括FTP、电子邮件、HTTP和Web Service网络程序开发技术; 第四部分为C#网络程序开发实践,包括TCP、UDP、P2P、FTP、电子邮件、HTTP和Web Service网络程序开发实践; 第五部分为C#网络程序开发课程设计,包括课程设计目的、题目及要求、考核方式。 本书遵循由浅入深、逐步深入的原则,实验以理论课例程为基础进行扩展和提高,有利于激发学习兴趣,增强学习的自信心和成就感,进而牢固地掌握网络程序开发技术。本书提供了配套的课件和源程序。 本书可作为高等院校计算机及相关专业的教材,也可作为信息技术领域教师、学生和工程技术人员的参考书。
目录
**部分C#网络程序开发基础
第1章C#网络程序开发基础知识
1.1网络通信模型及分类
1.1.1分散式、集中式与分布式系统
1.1.2C/S、B/S与P2P网络通信架构
1.2TCP/IP网络模型及协议
1.2.1TCP/IP网络架构
1.2.2TCP协议和UDP协议
1.2.3IP协议
1.3网络程序通信机制
1.3.1端口与套接字
1.3.2基于套接字的网络进程通信机制
第2章C#网络程序开发基础
2.1Visual Studio.NET集成开发环境概述
2.2开发环境的安装与常见C#网络编程简介
2.2.1开发环境的安装
2.2.2C#网络编程简介
2.3C#.NET网络程序开发基本类
2.3.1IPAddress类
2.3.2IPHostEntry类
2.3.3IPEndPoint类
2.3.4Dns类
2.3.5Ping及相关类
2.4C#套接字与网络流
2.4.1Socket类
2.4.2套接字的类型与使用方法
2.4.3网络流
2.4.4网络数据编码与解码
2.5多线程技术
2.5.1多线程概述
2.5.2多线程的创建与使用
2.5.3多线程的同步
2.5.4线程池的概念与使用方法
第二部分C#网络传输程序开发
第3章TCP网络程序开发
3.1TCP程序开发主要技术
3.1.1使用套接字进行TCP传输
3.1.2使用TCP类进行网络传输
3.1.3同步与异步
3.2基于同步TCP的网络聊天程序开发
3.2.1功能介绍及界面设计
3.2.2服务器程序编写
3.2.3客户端程序编写
3.3基于异步TCP的网络聊天程序开发
3.3.1异步程序编程方法
3.3.2界面设计
3.3.3服务器端程序编写
3.3.4客户端程序编写
第4章UDP网络程序开发
4.1UDP程序开发的主要技术
4.1.1UDP与TCP的区别与优势
4.1.2使用UDP类进行网络传输
4.1.3UDP下的同步与异步通信
4.2UDP的广播与组播程序开发
4.2.1广播与组播的基本概念
4.2.2组播组的加入与退出
4.3基于广播和组播的网络会议程序开发
4.3.1功能介绍及页面设计
4.3.2程序实现代码
第5章P2P网络程序开发
5.1P2P基础知识
5.1.1P2P的发展历程
5.1.2P2P的架构
5.1.3P2P通信步骤
5.2.NET下的P2P程序开发
5.2.1对等名称解析协议
5.2.2PeerToPeer命名空间
5.3P2P资源注册与发现程序开发
5.3.1P2P资源发现过程
5.3.2P2P资源注册程序开发
5.3.3P2P资源发现程序开发
第三部分Internet应用程序开发
第6章FTP网络程序开发
6.1FTP原理及规范
6.1.1FTP概述
6.1.2FTP工作原理和数据传输
6.1.3FTP规范
6.2FTP程序开发相关类
6.2.1FtpWebRequest类
6.2.2FtpWebResponse类
6.2.3NetworkCredential类
6.3编写FTP的文件上传下载器
6.3.1FTP服务器的配置
6.3.2功能介绍及界面设计
6.3.3上传文件程序开发实现
6.3.4下载文件程序开发实现
第7章SMTP与POP3网络程序开发技术
7.1邮件发送与接收协议
7.1.1邮件发送与SMTP协议
7.1.2邮件接收与POP3协议
7.1.3.NET下的邮件收发相关类
7.2邮件客户端程序开发实现
7.2.1功能介绍及页面设计
7.2.2邮件发送模块程序开发实现
7.2.3邮件接收模块程序开发实现
第8章基于HTTP的Web程序开发技术
8.1HTTP简介
8.1.1HTTP工作原理及特点
8.1.2HTTP协议
8.2.NET下的HTTP程序开发技术
8.2.1HTTP程序开发相关类
8.2.2Web中的数据提交
8.2.3Web数据交换举例
8.3编写HTTP下的多线程文件下载器
8.3.1网络资源有效性检测
8.3.2使用多线程下载文件
第9章Web Service程序开发技术
9.1Web Service技术概述
9.1.1Web Service基本概念
9.1.2Web Service的优势与短处
9.1.3Web Service的架构
9.2创建和使用Web服务
9.2.1创建Web服务
9.2.2调用Web服务
9.3Web Service实用程序开发举例
9.3.1使用Web Service编写天气预报程序
9.3.2使用Web Service查询股票行情
第四部分C#网络程序开发实践
实验一C#网络程序开发基础——使用多线程扫描主机及端口
实验二TCP程序开发实践——C/S模式的局域网聊天程序开发
实验三UDP程序开发实践——局域网视频聊天程序开发
实验四P2P程序开发实践——双人对战五子棋
实验五FTP程序开发实践——编写自己的FTP服务器
实验六电子邮件程序开发实践——电子邮件客户端
实验七HTTP程序开发实践——编写自己的简单Web浏览器
实验八Web Service程序开发实践——学生网络选课管理程序
第五部分C#网络程序开发课程设计
参考文献
节选
第3章TCP网络程序开发 TCP(Transmission Control Protocol,传输控制协议)是一种面向连接(连接导向)的、可靠的、基于字节流的、全双工的传输层(transport layer)通信协议。在简化的计算机OS模型中,TCP位于IP层之上,用于完成传输层的指定功能。TCP的工作过程与人们日常生活中的打电话相似,要经过建立连接、传输数据和连接终止3个步骤。 3.1TCP程序开发主要技术 TCP程序开发的主要技术有使用套接字进行TCP传输、使用TCP类进行网络传输和TCP同步异步等。 3.1.1使用套接字进行TCP传输 套接字分为两种: 一种是面向连接的(connectionoriented)套接字,另一种是无连接的(connectionless)套接字。使用TCP协议编程的套接字是面向连接的,通过它建立两个IP地址端点之间的会话,一旦建立了这种连接就可以在设备之间进行可靠传输。 根据连接的启动方式和本地套接字要连接的目标,套接字的连接过程可分为以下3个阶段: (1) 服务器监听: 是指服务器套接字并不定位具体的客户端套接字,而是处于等待连接的状态,实时监控网络状态。 图31面向连接的套接字编程 (2) 客户端请求: 是指由客户端的套接字提出连接请求,要连接的目标是服务器的套接字。为此,客户端的套接字必须首先描述它要连接的服务器的套接字,指出服务器套接字的地址和端口号,然后再向服务器套接字提出连接请求。 (3) 连接确认: 是指当服务器套接字监听到客户端套接字的连接请求时,它就响应客户端套接字的请求,把服务器套接字的信息发给客户端,一旦客户端确认了此信息,连接即可建立。而服务器套接字继续监听其他客户端套接字的连接请求。面向连接的套接字编程框架如图31所示。 1. 建立连接 服务器和客户端通信的前提是服务器首先在指定的端口监听是否有客户端的连接请求,当客户端向服务器发起连接请求并被服务器接收后,双方即可建立连接。 (1) 服务器编程。在服务器程序中,首先创建一个本地套接字对象。例如: Socket localSocket=new Socket(AddressFamily.InterNetwork,SocketType.Stream, ProtocolType.Tcp); 然后将套接字绑定到用于TCP通信的本地IP地址和窗口上。Bind方法用于完成绑定工作。例如: IPHostEntry local=Dns.GetHostByName(Dns.GetHostName()); IPEndPoint iep=new IPEndPoint(local.AddressList[0], 1180); localSocket.Bind(iep); 将套接字与端口绑定后,就用Listen方法等待客户端发出连接尝试。例如: locatSocket.Listen(10); Listen方法自动将客户端连接请求放到请求队列中,参数指出系统等待用户服务程序排队的连接数,超过连接数的任何客户端都不能与服务器进行通信。 在Listen方法执行之后,服务器已经做好了接收任何连接的准备。这时,可用Accept方法从请求队列中获取连接。例如: localSocket.Accept(); 程序执行到Accept方法时被阻塞,直到接收到客户端的连接请求后才继续执行下一条语句。服务器一旦接收了客户端的连接请求,Accept方法立即返回一个与客户端通信的新的套接字。该套接字中既包含了本机的IP地址和端口号,也包含了客户端的IP地址和端口号。然后就可以利用此套接字与该客户端进行通信了。 (2) 客户端编程。客户端利用Socket的Connect方法向远程主机的端点发起连接请求,并将自身绑定到系统自动分配的端点上。例如: IPAddress remoteHost=IPAddress.Parse("192.168.0.1"); IPEndPoint iep=new IPEndPoint(remoteHost, 1180); Socket localSocket=new Socket( AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp); localSocket.Connect(iep); 程序运行后,客户端与服务器端建立连接之前,系统不会执行Connect语句下面的语句,而是处于阻塞状态,直到连接成功或出现异常为止。 ……
-
落洼物语
¥8.9¥28.0 -
当代中国政府与政治(新编21世纪公共管理系列教材)
¥33.6¥48.0 -
中国当代文学名篇选读
¥17.0¥53.0 -
中医基础理论
¥50.7¥59.0 -
长征记忆(八品)
¥9.5¥45.0 -
北大人文课(平装)
¥12.2¥45.0 -
世界现代设计史-[第二版]
¥63.6¥120.0 -
断代(八品)
¥13.4¥42.0 -
宪法-第二版
¥20.3¥29.0 -
先进防伪技术
¥81.3¥98.0 -
当代中国政府与政治 第二版
¥57.8¥68.0 -
企业法务教程
¥34.8¥49.0 -
习近平新时代中国特色社会主义思想概论
¥18.2¥26.0 -
毛泽东思想和中国特色社会主义理论体系概论(2021年版)
¥8.5¥25.0 -
新闻学概论(第七版)(新闻与传播学系列教材(新世纪版))
¥30.0¥50.0 -
办公室工作实务(第4版)/黄海
¥27.8¥48.0 -
全国压力管道设计和审批人员培训教材(第四版)
¥160.4¥198.0 -
习近平总书记教育重要论述讲义
¥13.3¥35.0 -
无人机概论
¥37.2¥59.0 -
(平装)北大必修课:北大口才课
¥18.2¥45.0