网络编程技术》教学大纲

2013版)

 

 

 

 

 

课程编码:0611102503

课程名称:网络编程技术

学时/学分:48/3

先修课程:《计算机网络》、《算法与数据结构》、《程序设计基础》、《操作系统》

适用专业:计算机科学与技术

开课教研室:网络工程教研室

 

 

 

 

 

 

 

 

 

 

 

 

执笔:

审定:

 

 

 

 

一、课程性质与任务

1.课程性质:本课程是计算机科学与技术专业的专业选修课。课程注重实践和多课程综合应用,所含内容涉及计算机网络、程序设计、操作系统等课程。

2.课程任务:课程主要介绍当前流行的各类网络编程相关概念,工具,理论和方法。通过课堂教学,并让学生在网络环境下运用编程工具实现网络程序,使学生熟练掌握网络开发技术,同时加深对计算机网络软件开发相关技术与理论的认识。

二、课程教学基本要求

《网络编程技术》是一门综合性很强的课程,在理论结合实际的基础上,强调实践性。在融合前期计算机网络、算法与数据结构、程序设计基础与操作系统等课程理论的基础上,结合流行网络应用加强学生的网络编程能力。

本课程共计学时:48,理论学时32,实践学时16

成绩考核形式:末考成绩(开卷机试考试)(70%)+平时成绩(平时测验、作业、课堂提问、课堂讨论等)(30%)。成绩评定采用百分制,60分为及格。

三、课程教学内容

第一章    Windows网络编程基础

1.教学基本要求

了解Windows网络应用及其开发环境。

2.要求学生掌握的基本概念、理论、技能

通过本章学习,使学生了解常见的Windows网络应用,掌握Windows网络程序开发环境的搭建。

3.教学重点和难点

教学重点是Windows环境下的网络应用程序。教学难点是Windows环境下的网络应用程序。

4.教学内容

1Windows网络应用

主要知识点:常用的网络应用实例;网络应用的特点与运行环境;网络应用前景。

2Windows环境下的应用程序

主要知识点:应用程序的形态;应用程序的运行环境;应用程序的开发环境。

3Windows环境下的网络应用程序

主要知识点:网络应用环境的系统支持;网络应用程序运行环境的问题;网络应用程序的应用模型。

第二章    单机资源共享的应用编程

1.教学基本要求

理解单机资源共享应用程序的原理,掌握常用的实现方法。

2.要求学生掌握的基本概念、理论、技能

通过本章学习,使学生理解进程间通信、多线程通信、同步控制机制和动态链接库的原理,并掌握其实现方法等。

3.教学重点和难点

教学重点是进程间通信,多线程通信,同步控制机制。教学难点是进程间通信,多线程通信,同步控制机制。

4.教学内容

1)进程间通信

主要知识点:进程间通信应用实例及概念;进程的创建与终止;内存文件映射。

2)多线程通信

主要知识点:多线程应用实例及概念;线程的创建、挂起、激活和终止;线程的优先级。

3同步控制机制

主要知识点:同步控制应用实例及意义;同步控制类型及应用条件;应用实例的算法与实现。

4)动态链接库

主要知识点:静态链接库与动态链接库的应用实例;动态链接库的创建与调用方法;动态链接库的应用的条件。

第三章    基于WinSock的网络编程

1.教学基本要求

了解WinSock基本知识,掌握常用的WinSock应用算法。

2.要求学生掌握的基本概念、理论、技能

通过本章学习,使学生了解基于WinSock网络编程的基础知识,理解WinSock网络应用算法,并能实现基本的网络应用算法。

3.教学重点和难点

教学重点是基于WinSock网络编程基础,WinSock网络应用实例算法与发现。教学难点是WinSock网络应用实例算法与发现,WinSock异步I/O

4.教学内容

1)基于WinSock网络编程基础

主要知识点:网络应用实例与来源;Winsock提供的接口与服务;WinSock提供的函数调用。

2WinSock网络应用实例算法与实现

主要知识点:获取主机网络信息;WinSock单播、多播与广播通信应用;WinSock会话通信应用。

3WinSock异步I/O

主要知识点:WinSock异步I/OWinSockI/O方法;异步I/O应用实例的算法与实现

第四章    直接网络编程

1.教学基本要求

理解原始套接字编程的原理,理解和掌握基于WinPcap捕获网络数据包的原理和方法。

2.要求学生掌握的基本概念、理论、技能

通过本章学习,使学生理解原始套接字编程的原理,能够基于WinPcap捕获网络数据包。

3.教学重点和难点

教学重点是计算机系统,系统单元。教学难点是系统单元,性能指标。

4.教学内容

1)原始套接字编程

主要知识点:原始套接字简介;WinSock的原始套接字;WinSock原始套接字编程步骤;WinSock原始套接字实例

2)基于WinPcap网络数据包捕获

主要知识点:WinPcap简介;网络数据包捕获的原理;Windlows捕获数据包的结构;利用WinPcap进行网络数据包捕获和过滤;WinPcap开发环境配置;WinPcap实例分析;数据包捕获性能的优化。

四、学时分配表

1.讲授内容及学时分配

章序

内容

课时

备注

Windows网络编程基础

4

 

单机资源共享的应用编程

6

 

基于WinSock的网络编程

10

 

直接网络编程

12

 

合计

32

 

2.实践内容及学时分配

序号

项目名称

内容提要

学时

/选开

1

熟悉网络编程环境

1搭建网络编程环境。

2.创建Windows窗口应用程序

3创建菜单程序、对话框程序。

2

必开

2

套接字编程

1.基于TCP服务器端程序设计。

2.基于TCP客户端程序设计。

3.基于UDP服务器端程序设计。

4.基于UDP客户端程序设计。

4

必开

3

线程同步

1.利用互斥对象实现线程同步。

2.利用事件对象实现线程同步

3.利用关键代码段对象实现线程同步。

4

必开

4

多线程聊天程序编程

完成聊天室的全过程,包括客户端和服务器两大部分的编程及其连接

2

必开

5

基于消息的异步套接字编程

1.非阻塞模式下编程。

2.加载套接字库

3.初始化套接字。

4.接受/发送消息。

2

必开

7

动态链接库的创建与应用

1.建立动态链接库

2.隐式方式调用动态链接库

3.显式方式调用动态链接库。

2

必开

合计

16

 

五、主用教材及参考书

(一)主用教材:

Windows网络编程技术》 主编:胡鸣 出版社:科学出版社 出版时间:2008年。

(二)参考书:

1. Windows核心编程》主编:(美)杰瑞夫(Jeffrey.J)著,葛子昂 出版社:清华大学出版社 出版时间:2008年。

2. Windows网络编程》主编:罗莉琴 出版社:人民邮电出版社 出版时间:2011年。

3. Windows网络编程案例教程》主编:董相志 出版社:清华大学出版社 出版时间:2012年。