面向西部高校的网络通信编程课程教改研究

2015-01-06 18:59敬超范恒祯
电脑知识与技术 2014年34期
关键词:网络工程人才培养实践

敬超+范恒祯

摘要:网络工程专业的建设可以缓解网络人才的需求,然而现有的培养模式并不能达到培养工程型人才的目标。网络通信编程作为网络工程的核心课程之一, 对网络工程型人才的培养起到了非常重要的作用。但是该课程在教学过程中存在很多问题,尤其是对西部高校。文章首先结合西北地域性特点分析了课程开展存在的问题主要在于授课模式、教学法、学生生源地等;然后详述了该类课程的教改方案和思路,主要包括了理论与实验课设置,基于工程化的项目教学方法以及师资力量等;该方案的实施将会帮助学生建立工程化的编程理念和思维,对网络通信编程课程的开设起到一定的指导和借鉴意义。

关键词:网络工程;网络通信编程;人才培养;教学模式;实践;工程化的项目

中图分类号:G642 文献标识码:A 文章编号:1009-3044(2014)34-8113-02

随着互联网和通信技术的不断发展与进步,网络型人才的需求也日益增多,高校开设了网络工程专业培养面向应用的网络型人才。这一时代背景下,桂林理工大学信息科学与工程学院在2008年开设了网络工程专业本科[1]。在网络工程专业中,我校将基于Linux网络通信编程技术课程做为核心专业课程之一,掌握好这门课程将有助于提高学生在网络通信编程程序开发方面的能力,很好的解决工程实际问题。

Linux系统是一款开源的操作系统,它不仅适用于嵌入式系统的开发,而且还支持各种因特网协议,大部分主流的网络硬件、协议和文件系统都可以支持。所以,我校的网络通信编程技术课程主要是基于Linux操作系统。然而,Linux系统主要是用字符命令来控制计算机的操作,而对于长期使用Windows图形界面操作系统的学生来说,要经过很长的一段时间才可以适应。

本文就Linux网络通信编程技术课程在桂林理工大学的开展情况,结合西部地域性的特点,首先阐述了在教授这门课程时候面临的问题,包括教授对象,教学法、课程建设等方面,之后再详细描述了相应的课程改革具体措施,最后对本文进行了总结。

1 课程设置存在的问题

1.1 西部地域性问题

笔者所就职的高校位于西部城市,经济较为落后,高校生源多来自省内和经济落后地区。笔者就所教授的网络工程专业学生生源地进行了统计调查,如表1,学生人数为81人来自网络工程专业某年级,调查显示:77.78%的学生生源地为本省生源,其中65.43%的学生生源地为农村,少数名族人数的比例达到了34.57%。而来自农村的大多数学生是上到大学后才正式接触基于Windows操作系统的计算机,对于Linux系统很陌生,所以起点低,学习难度大是教学中遇到的问题之一。

1.2 课程建设问题

Linux网络通信编程技术是网络工程专业一门专业核心课程。其课程内容覆盖丰富包括了Linux系统,文件系统,TCP/IP协议族,socket套接字通信编程,TCP/UDP网络编程,数据的IO复用等几个主要的部分。其中Linux系统本身就是一个开放型的、免费自由软件,它具备多个任务并发,多用户的特点,是经典操作系统UNIX的克隆版本,且包含了很多UNIX的特性。同时该系统与Windows操作也有很大的不同,不再是基于界面的操作,而是采用基于命令指令输入的模式进行交互操作,所以涉及的范围非常广泛。该门课程还涉及计算机网络,通信等专业课程知识[2]。

1.3 传统教学法模式存在的问题

这门课程传统的教学模式是理论-技术-操作的方式,即以教师为理论讲解主导,学生主要关注技术和实际操作,这种教学模式,虽然在一定程度上可以达到“学以致用”目的,但是并不能解决实际问题,由于缺乏理论知识的支撑,学生多数只能记住操作,而不能真正的解决实际问题。

2 课程教学改革思路

通过笔者所在的教学团队大量的调研工作,针对西部高校以及网络通信编程技术课程存在的问题,主要从教学课程设置,实验课程,教学法,教材以及师资培养等方面,提出了相应的教改思路。

2.1 课程设置

自2008年起就开始设置网络工程专业本科,网络编程的课程作为一门专业核心课程开设在了本科学习的第三年,与之相辅开设的课程包括:计算机网络,C语言程序开发以及Linux操作系统等,开设这些课程目的主要是为了将计算机网络知识与编程课程紧密相联,从而让学生从网络编程角度解决实际的问题。同时专门的Linux操作课程的开设也可以弥补学生在Linux系统操作上的不足。

2.2 实验课程

现在的本科教育普遍存在的一个问题就是“重理论,轻实践”、教学与实践课程分布不均匀。桂林理工大学在培养网络工程人才的时候,根据网络编程课程实践性强的特点,大幅度的提高了实践课的比例。该课程总学时为48,32个学时为课程授课,主要是采用理论结合实例的形式进行讲授。还设置了16个学时的实验课程,占了总授课时的33.33%,实验内容包括基础性验证实验和设计性实验。具体的实验内容如表2所示。

首先前四个实验是以验证性实验为主,主要是为学生Linux编程打下基础,在学生具备了一定的编程基础后,最后两个则是基于实际设计的设计性实验。在实验教学过程中,根据学生的理解和认知能力,采用集中和单独讲解的方式,即普遍问题集中讲解,个别问题单独讲解。实验系统主要基于虚拟机运行的,操作系统是Ubuntu,这样做可以省去繁琐的实验配置工作,把重点放在Linux系统的使用上,同时使用Ubuntu系统也方便操作,利于实践教学。

2.3 工程化的项目教学法[3-5]

为了帮助学生构建工程理念,还专门布置了实践型强、基于工程化的综合性大作业,根据学生水平层次,将学生以10人为单位进行分组完成大作业。编程能力较强担任组长和副组长,主要负责统筹、规划等工作,然后按照将大作业内容按模块划分由各个组员完成,该作业贯穿整个学期,主要由学生在课外进行,考核方式主要以书面报告和口头答辩的形式进行。这样做的目的主要有几个:endprint

第一,培养独立动手的能力,学生可以根据自己的兴趣爱好自拟题目,也可以选择给定的实验题目。

第二,帮助学生建立团队合作意识,加强学生的沟通与协作能力,形成良好的团队合作理念。

第三,帮助学生建立工程理念,培养分析能力。

第四,模拟工程项目角色,在小组内设置项目经理,系统架构师,软件工程师等职位,培养学生承担责任和建立风险意识。

2.4 教材的选择

选用的教材是清华大学出版社,宋敬彬等人编著的《Linux网络编程》[6],同时采用辅助教材是Unix 网络编程卷1:套接字联网API,第三版,人民邮电出版社;Unix 网络编程卷2:进程间通信,人民邮电出版社;《Linux网络编程》课程教材的选择主要原因是该书内容丰富,图文并茂,涵盖了Linux网络编程从基础到高级的开发过程,并且还重点讲述了Linux用户空间和内核的关系,以及内核网络的编程等。同时这本书具有很全面的知识点,从原始概念和基本原理都做了深入的讲解和详细的分析;而该书给出了很多经典代码的源码,结合了450多个示例,70多个应用实例以及三套项目案例的详细介绍与实现过程,这些案例大多数都来自于实际项目具有很强的实用性。

2.5 师资培养

网络工程专业的核心课程,除了Linux网络编程需要具备一定的工程背景外,其余的核心课工程实践性也很强,这就要求教师不仅有深厚的知识理论,还需要有一定的工程背景。所以为了适应工程型教育的需求,学院对教学团队的培养,一方面在引进新教师的时候,要求其有2-3年的工程实践背景,参与过企业项目开发,具备工程实践经验;另一方面,积极协助青年教师去国内985/211高校和国外高水平大学进修或者访学,鼓励青年教师申报各种基金项目、教改基金项目等。

3 总结

经过这几年的努力,课程内容与教学方式也不断完善,在教学过程中采用了基于工程的项目化教学法以及实践课程时间的增加,锻炼了学生的动手能力,得到了学生的好评。在以后的教学中,笔者所在的教学团队教学水平还会不断的提高,进一步深化课堂的教学研究,争取在短时间的课程内,更加激发学生学习的主动性和热情。

参考文献:

[1] 董明刚,程小辉. 网络工程本科专业人才培养模式探讨[J].电脑知识与技术, 2012,8(16):3801-3802.

[2] 李鹏. 网络编程技术课程的教学改革思路[J]. 西安邮电学院学报, 2010,15(2):166-168.

[3] 蔡京玫. 项目教学法在《网络编程》课程教学中的应用[J]. 电脑知识与技术, 2011, 7(18):4388-4389.

[4] 曹莹莹, 黄津津, 王创伟, 荀启峰. 工程教育驱动的Linux 网络编程课程改革[J]. 计算机教育, 2013, 14:24-28.

[5] 曹华孝, 龚凌, 赵琳. 项目驱动教学法在独立学院《Linux网络操作系统》课程中的应用[J]. 中国信息技术教育:高教专区, 2014(9): 91-93.

[6] 宋敬彬. Linux网络编程[M]. 北京:清华大学出版社, 2010.endprint

第一,培养独立动手的能力,学生可以根据自己的兴趣爱好自拟题目,也可以选择给定的实验题目。

第二,帮助学生建立团队合作意识,加强学生的沟通与协作能力,形成良好的团队合作理念。

第三,帮助学生建立工程理念,培养分析能力。

第四,模拟工程项目角色,在小组内设置项目经理,系统架构师,软件工程师等职位,培养学生承担责任和建立风险意识。

2.4 教材的选择

选用的教材是清华大学出版社,宋敬彬等人编著的《Linux网络编程》[6],同时采用辅助教材是Unix 网络编程卷1:套接字联网API,第三版,人民邮电出版社;Unix 网络编程卷2:进程间通信,人民邮电出版社;《Linux网络编程》课程教材的选择主要原因是该书内容丰富,图文并茂,涵盖了Linux网络编程从基础到高级的开发过程,并且还重点讲述了Linux用户空间和内核的关系,以及内核网络的编程等。同时这本书具有很全面的知识点,从原始概念和基本原理都做了深入的讲解和详细的分析;而该书给出了很多经典代码的源码,结合了450多个示例,70多个应用实例以及三套项目案例的详细介绍与实现过程,这些案例大多数都来自于实际项目具有很强的实用性。

2.5 师资培养

网络工程专业的核心课程,除了Linux网络编程需要具备一定的工程背景外,其余的核心课工程实践性也很强,这就要求教师不仅有深厚的知识理论,还需要有一定的工程背景。所以为了适应工程型教育的需求,学院对教学团队的培养,一方面在引进新教师的时候,要求其有2-3年的工程实践背景,参与过企业项目开发,具备工程实践经验;另一方面,积极协助青年教师去国内985/211高校和国外高水平大学进修或者访学,鼓励青年教师申报各种基金项目、教改基金项目等。

3 总结

经过这几年的努力,课程内容与教学方式也不断完善,在教学过程中采用了基于工程的项目化教学法以及实践课程时间的增加,锻炼了学生的动手能力,得到了学生的好评。在以后的教学中,笔者所在的教学团队教学水平还会不断的提高,进一步深化课堂的教学研究,争取在短时间的课程内,更加激发学生学习的主动性和热情。

参考文献:

[1] 董明刚,程小辉. 网络工程本科专业人才培养模式探讨[J].电脑知识与技术, 2012,8(16):3801-3802.

[2] 李鹏. 网络编程技术课程的教学改革思路[J]. 西安邮电学院学报, 2010,15(2):166-168.

[3] 蔡京玫. 项目教学法在《网络编程》课程教学中的应用[J]. 电脑知识与技术, 2011, 7(18):4388-4389.

[4] 曹莹莹, 黄津津, 王创伟, 荀启峰. 工程教育驱动的Linux 网络编程课程改革[J]. 计算机教育, 2013, 14:24-28.

[5] 曹华孝, 龚凌, 赵琳. 项目驱动教学法在独立学院《Linux网络操作系统》课程中的应用[J]. 中国信息技术教育:高教专区, 2014(9): 91-93.

[6] 宋敬彬. Linux网络编程[M]. 北京:清华大学出版社, 2010.endprint

第一,培养独立动手的能力,学生可以根据自己的兴趣爱好自拟题目,也可以选择给定的实验题目。

第二,帮助学生建立团队合作意识,加强学生的沟通与协作能力,形成良好的团队合作理念。

第三,帮助学生建立工程理念,培养分析能力。

第四,模拟工程项目角色,在小组内设置项目经理,系统架构师,软件工程师等职位,培养学生承担责任和建立风险意识。

2.4 教材的选择

选用的教材是清华大学出版社,宋敬彬等人编著的《Linux网络编程》[6],同时采用辅助教材是Unix 网络编程卷1:套接字联网API,第三版,人民邮电出版社;Unix 网络编程卷2:进程间通信,人民邮电出版社;《Linux网络编程》课程教材的选择主要原因是该书内容丰富,图文并茂,涵盖了Linux网络编程从基础到高级的开发过程,并且还重点讲述了Linux用户空间和内核的关系,以及内核网络的编程等。同时这本书具有很全面的知识点,从原始概念和基本原理都做了深入的讲解和详细的分析;而该书给出了很多经典代码的源码,结合了450多个示例,70多个应用实例以及三套项目案例的详细介绍与实现过程,这些案例大多数都来自于实际项目具有很强的实用性。

2.5 师资培养

网络工程专业的核心课程,除了Linux网络编程需要具备一定的工程背景外,其余的核心课工程实践性也很强,这就要求教师不仅有深厚的知识理论,还需要有一定的工程背景。所以为了适应工程型教育的需求,学院对教学团队的培养,一方面在引进新教师的时候,要求其有2-3年的工程实践背景,参与过企业项目开发,具备工程实践经验;另一方面,积极协助青年教师去国内985/211高校和国外高水平大学进修或者访学,鼓励青年教师申报各种基金项目、教改基金项目等。

3 总结

经过这几年的努力,课程内容与教学方式也不断完善,在教学过程中采用了基于工程的项目化教学法以及实践课程时间的增加,锻炼了学生的动手能力,得到了学生的好评。在以后的教学中,笔者所在的教学团队教学水平还会不断的提高,进一步深化课堂的教学研究,争取在短时间的课程内,更加激发学生学习的主动性和热情。

参考文献:

[1] 董明刚,程小辉. 网络工程本科专业人才培养模式探讨[J].电脑知识与技术, 2012,8(16):3801-3802.

[2] 李鹏. 网络编程技术课程的教学改革思路[J]. 西安邮电学院学报, 2010,15(2):166-168.

[3] 蔡京玫. 项目教学法在《网络编程》课程教学中的应用[J]. 电脑知识与技术, 2011, 7(18):4388-4389.

[4] 曹莹莹, 黄津津, 王创伟, 荀启峰. 工程教育驱动的Linux 网络编程课程改革[J]. 计算机教育, 2013, 14:24-28.

[5] 曹华孝, 龚凌, 赵琳. 项目驱动教学法在独立学院《Linux网络操作系统》课程中的应用[J]. 中国信息技术教育:高教专区, 2014(9): 91-93.

[6] 宋敬彬. Linux网络编程[M]. 北京:清华大学出版社, 2010.endprint

猜你喜欢
网络工程人才培养实践
网络工程专业课程中的“双创”教育与实践
地方高校网络工程专业人才培养的改革与实践
新工科背景下网络工程专业建设探索与实践
网络工程中的安全防护技术的若干思考