欢迎来到天天文库
浏览记录
ID:25202398
大小:53.00 KB
页数:7页
时间:2018-11-18
《网络程序设计课程教学改革探索》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、网络程序设计课程教学改革探索 网络程序设计课程教学改革探索 胡庆辉a,阮晓霞b,陆玉靖c (桂林航天工业学院a.信息工程系;b.外语系;c.汽车工程系,广西桂林541004) 摘要:针对“网络程序设计”课程教学中存在的问题,根据课程的特点和要求以及应用型本科教学的要求,提出了该课程的教学改革设想,在理论和实践教学内容的选取、教学方法的设计及教学评价考核等方面进行了分析和研究,并在教学过程中进行了实践,结果表明在提高学生学习兴趣、增强学生动手能力、巩固学生对知识的理解和掌握等方面有一定的积极作用。 关键词:案例教学;网络程序设计;评价体系;实践教学 基金项目:广西教育厅十二五教
2、改重点项目(2011JGZ065)资助 简介:胡庆辉(1976-),男,副教授,博士,重庆开县人,主要从事多核学习、监督学习、半监督学习及数据挖掘等方面的研究。 一、背景 随着计算机和网络的普及,在我们身边,随时随地都在利用各种应用程序实现用户之间的交互。打开浏览器,打开各种各样的聊天和通信工具,我们随时接触到的是网络。未来的IT产业,计算机网络相关的应用将成为核心。高性能的服务器设计、分布式程序的管理、数据的高效传输以及数据传输过程中的安全控制等,都是网络程序设计者要考虑的问题。“网络程序设计”作为“计算机网络”的后续课程,是计算机相关专业的一门重要课程,该课程将计算机网络技术及
3、实践应用有机地结合,对学生加深理解和运用计算机系统、计算机网络的基本原理及程序设计能力的提高等,都起到至关重要的作用。无论学生将来是从事软件工程、网络工程项目的设计与开发,还是计算机网络相关的科研和管理工作,都极有可能需要进行网络程序设计,因此这门课程在教学中占有重要地位。但在实际教学过程中,我们发现不少学生存在程序设计能力不强、操作系统及计算机网络基础知识不扎实等问题,主要体现在以下几方面。 1.学生编程能力差,不能熟练运用VC开发工具。目前的一些高级开发工具,如VC、Java、VB、。、Delphi等,都可以实现基于网络协议栈的编程,但是除了VC以外,其他开发工具都是在一个较高抽象
4、层次上进行面向对象的开发,利用这些工具学生无法深入理解操作系统网络通信的底层接口,而VC环境提供了底层的网络编程接口,因此通常是作为“网络程序设计”开发环境的首选。但由于VC环境中的MFC基础类库非常庞大,系统结构复杂,应用程序设计接口难于掌握,因此尽管学生在此之前已经学习了“C语言程序设计”及“面向对象程序设计”等基础课程,也很难在短时间内熟练理解和运用VC开发工具。 2.一些前期的专业基础课掌握不扎实。本课程会大量涉及到“计算机网络”和“操作系统”两门课程的基本内容,如线程、进程、同步、互斥等概念;网络协议模型中各层次的地位及工作原理;等等。而这些课程只偏重理论的教学,没有将一些原
5、理应用到实践上,导致学生理解困难,没有办法灵活运用。 3.现有的“网络程序设计”教材内容难易程度往往出现两极分化,有的过于注重基础,只讲授简单的套接字接口、应用层的FTP、HTTP和POP3协议等方面的编程,没有涉及到与身边密切相关的一些网络程序,如广播、多播技术、ARP欺骗技术、P2P数据交换技术等,学生只能学到一些简单的应用,和工作的需求相距较远。有的教材偏难,甚至涉及到底层协议的开发,这样的教材也不适合应用型本科层次的学生。 针对以上问题,本文根据多年的“网络程序设计”课程的教学经验,(.fFC的基本框架以及用VC程序的架构、代码的执行过程等;第3部分是对传输层之上的套接字编程
6、接口进行介绍,同时通过设计一个应答的聊天程序,让学生理解套接字的工作过程;第4部分介绍了一个典型的应用层协议FTP的软件开发,其他的如POP3协议、HTTP协议等与FTP协议的开发过程异曲同工,因此没有介绍;第5部分通过多线程方式实现FTP文件的上传和下载,让学生掌握多线程技术;第6~7部分选择的是一些与身边密切相关的网络应用,包括广播和多播、网络扫描和检测技术及点对点(P2P)通讯技术等。 2.实验内容的设计。实践教学环节是对课堂教学环节有益的补充,也是提高学生自身能力的关键环。考虑到学生自身水平参差不齐,我们根据课堂讲授的内容以及知识点的内在联系,设计由浅入深、由易到难的实验,尽可
7、能选择身边应用比较广泛的案例贯穿实验环节,课堂上所讲的案例可以作为学生上机的DEMO,学生在此基础之上补充和完善。根据难易程度,我们将实验教学所涉及的知识结构分成三个层次:第一层是基础实验,强调学生熟悉VC开发平台和利用套接字接口实现基本网络通讯程序;第二层是高级实验,它在基础实验之上,实现应用层FTP协议的编程、多线程编程、ARP欺骗及打洞编程等;第三层是我们设计了两个综合实验,将综合运用所学的网络知识和编程知识,实现一个较大的程
此文档下载收益归作者所有