《网络编程技术》教学大纲
(2013版)
课程编码:0611102503
课程名称:网络编程技术
学时/学分:48/3
先修课程:《计算机网络》、《算法与数据结构》、《程序设计基础》、《操作系统》
适用专业:计算机科学与技术
开课教研室:网络工程教研室
执笔:
审定:
一、课程性质与任务
1.课程性质:本课程是计算机科学与技术专业的专业选修课。课程注重实践和多课程综合应用,所含内容涉及计算机网络、程序设计、操作系统等课程。
2.课程任务:课程主要介绍当前流行的各类网络编程相关概念,工具,理论和方法。通过课堂教学,并让学生在网络环境下运用编程工具实现网络程序,使学生熟练掌握网络开发技术,同时加深对计算机网络软件开发相关技术与理论的认识。
二、课程教学基本要求
《网络编程技术》是一门综合性很强的课程,在理论结合实际的基础上,强调实践性。在融合前期计算机网络、算法与数据结构、程序设计基础与操作系统等课程理论的基础上,结合流行网络应用加强学生的网络编程能力。
本课程共计学时:48,理论学时32,实践学时16。
成绩考核形式:末考成绩(开卷机试考试)(70%)+平时成绩(平时测验、作业、课堂提问、课堂讨论等)(30%)。成绩评定采用百分制,60分为及格。
三、课程教学内容
第一章 Windows网络编程基础
1.教学基本要求
了解Windows网络应用及其开发环境。
2.要求学生掌握的基本概念、理论、技能
通过本章学习,使学生了解常见的Windows网络应用,掌握Windows网络程序开发环境的搭建。
3.教学重点和难点
教学重点是Windows环境下的网络应用程序。教学难点是Windows环境下的网络应用程序。
4.教学内容
(1)Windows网络应用
主要知识点:常用的网络应用实例;网络应用的特点与运行环境;网络应用前景。
(2)Windows环境下的应用程序
主要知识点:应用程序的形态;应用程序的运行环境;应用程序的开发环境。
(3)Windows环境下的网络应用程序
主要知识点:网络应用环境的系统支持;网络应用程序运行环境的问题;网络应用程序的应用模型。
第二章 单机资源共享的应用编程
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提供的函数调用。
(2)WinSock网络应用实例算法与实现
主要知识点:获取主机网络信息;WinSock单播、多播与广播通信应用;WinSock会话通信应用。
(3)WinSock异步I/O
主要知识点:WinSock异步I/O;WinSock的I/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年。