首页 -> 2008年第5期

电测类专业中程序设计教学研究与实践

作者:王红亮 王 洋 于 君




  [摘要]电测类专业是信息化产业的重点学科专业,而程序设计课程是电测类专业的专业基础课。本文结合多年的教学经验体会和电测类专业学科特点,提出了一些教学过程中的改进思路和方法,并且运用于实际教学活动中,取得了良好的教学效果。
  [关键词]电测类专业,程序设计教学,研究实践。
  [中图分类号]TN06[文献标识码]A[文章编号]1005-4634(2008)05-0445-03
  
  0引言
  
  随着信息技术的飞速发展,掌握现代科学技术知识、完善知识结构、提高应用能力并且能独立解决面临的任务以适应社会发展需求已经成为了新世纪大学生的必由之路。高等学校计算机应用系列课程中的“程序设计语言类”课程的开设已经成为复合型新型人才教育过程的重要环节。计算机既是现代科学技术的结晶,又是大众化的工具。通过课程的学习,可以使学生较为系统的理解、掌握和综合运用程序设计语言完成基本的编程任务,并且培养其在后续的学习工作中能够通过查阅相关技术文档、资料或手册独立完成工程项目的能力[1,2]。
  非计算机类的程序设计课程的教学目的是使学生在已掌握了计算机基础知识和应用知识的基础上,进一步提高运用计算机的技术能力,能够结合自己所学专业,解决一些实际工程问题的能力。
  
  1电测类专业中程序设计教学中的探索
  
  由于电测类专业在信息化产业中的基础地位,电测类专业教学的课程结构设置、知识能力的实践性和应用性要求都以主动适应社会主义现代化建设第一线需要为宗旨得到了进一步的修订和完善。计算机应用系列课程作为电测类专业的基础课程在实际教学中表现出了以下几方面的问题。
  
  1.1课程设置衔接力求连贯
  大学教育属于综合素质培养教育的范畴,与完全的职业性培训有着本质的区别,因此在课程设置方面存在着系统结构完整性的问题。随着计算机的普及,部分高等院校逐步取消了电测类专业一、二年级教学课程设置中计算机文化基础等信息技术基础课程,但是由于我国高等教育的扩招,生源范围的扩大,导致大学新生的计算机文化程度良莠不齐。为了在实践教学环节中不会因为计算机的基本操作问题而影响学生对程序设计的积极性,在实际的教学环节中不得不补充信息基础课的内容,与此同时就等于缩短了程序设计理论教学环节和实践教学环节的课时。在授课过程中笔者还发现部分学生在高中阶段曾学习过程序设计类课程,这就导致教学中“太简单-难理解”的两极分化状态,这种教学氛围既会影响教学进度也会影响部分学生的学习情绪。
  针对以上情况,高等院校应在新生入学后对其计算机操作能力和程序设计能力进行测试,达到合格水平可免修或自修相应课程,同时按照测试成绩合理划分课程班级,实行分类教学,这样不仅可以因材施教,保证学生学习的积极性,而且可以针对性的完善教学内容、保证教学进度。结合电测类专业的课程设置特点,建议将相关专业课程与程序设计课程安排为同一学年讲授。这些专业性较强的课程进一步运用了C/C++语言或者汇编语言,实际的操作运用既可以使学生深刻理解语言本身的特点,又锻炼了工程实际的能力。
  
  1.2指导教材以及授课内容取舍要得当
  现有程序设计课程的教材可以概括为以下几类:①注重理论介绍,缺少应用性分析;②忽略基础练习过程,直接进行工程实践讨论;③力求面面俱到,导致行程盲目、框架堆积;④过于应用技巧,忽视操作流程。因此在电测类专业程序设计课程教学内容的取舍方面,笔者根据专业特点,重新组织授课讲义,合理调整教学重点,建立以面向专业应用特点为主线的课程体系框架,而不是按照计算机学科的体系设置教学内容,这种教学安排有自身的系统性和完整性。
  以Visual Basic程序设计和C语言程序设计为例:在教材选取方面,不再指定教材,而是推荐国内外比较经典的程序设计教材,比如:《C程序设计教程》、《Visual Basic程序设计教程(第三版)》、《C程序设计语言》等等;在教学内容的选取过程中要结合后续课程的教学要求,特别要着重讲解数据类型定义和使用、逻辑运算和判断选取、循环控制结构、数组、函数、指针以及结构体和共同体等这类共性的知识点。
  
  1.3教学方法适应性转变
  传统的教学方式对于实际操作要求较高的程序设计课程不再适用,传统的“以教师讲授为主,学生理解思路”的教学模式转变为“以学生提问为主,老师引导帮助”的教学模式。根据教育学[3,4]理论:学生的思维过程往往从问题开始,提出问题让学生根据问题阅读分析教材,提出问题让学生思考回答,能触及学生心理,使学生产生疑虑之情,困惑之感,从而展开思想,积极思考,探索问题的奥秘,从而形成惊异、激奋、自豪感。因此在实际授课过程中按照“实践工程导出操作流程”的教学思路,采用“试验任务小组”[5]的形式在课前安排学生预习,使学生有充分的独立思考时间,带着疑问进入课堂,这就要求教师在每次课前精心选取适当难度的案例,整体把握案例难度和涉及的知识点。最终形成在课堂部分以讲辅为主,在实验部分以引导为主的教学链。
  在课程进行环节中要特别重视多媒体网络教学平台的二次开发,搭建答疑互动平台。根据教育心理学[6]理论,采取学生以班级代号作为用户名的个人匿名登陆方式,这样可以减轻学生不必要的思想顾虑,间接面对老师直接提出问题,将学生的“好代码”通过网络平台展示出来,这样教师既可以及时掌握学生在学习过程中的薄弱环节进而调整自己的教学安排,又拉近了师生之间的距离,便于交流学习。
  
  1.4考核机制有待完善
  随着全国计算机等级考试成为部分用人单位考核大学毕业生的条件之一,大多数学生对于计算机程序教学的目的产生了错误性的理解,致使学生误以为程序设计的学习就是为了最终获得计算机等级证书。程序设计课程的开设是为了培养学生程序开发技能,构建工程项目的能力,因此针对这种错误倾向,笔者将理论学时和实践学时按照1∶1的比例划分,实验部分的题目联系实际生活中的问题给出。考核形式采用网络试题库随机抽取题目的方法,考核成绩采用理论考试与上机考试相结合的形式,这样使学生注重学习中的积累过程而非考试结果本身。实践结果表明:注重基础,强化实践,重视能力考核,可以更充分的调动学生学习的积极性,提高教学效果,增强综合运用工程能力。
  
  2电测类专业中程序设计教学中的实践
  
  电测类专业程序设计教学中的“实践”包括两方面的含义。
  2.1学生课程教学“实践”
  学生课程学习“实践”主要包括课前预留题目的资料查找、“试验任务小组”内部讨论以及上机操作;理论课堂上的预留题目分析讨论;在完成教学安排中所规定完成的实验部分前提下,提倡学生自拟题目、自主完成。教师每次上机实验过程中都会遇到学生不同的调试问题,针对每班不同的调试问题,定期组织“调试讨论课”,将个性化的问题共性化,根据问题扩展延伸,找到问题根源,并且安排针对性题目再次巩固教学效果,进一步提高学生的学习兴趣。
  在实践教学最后环节安排一次“上机考试”,上机题目基本是实验题目的现实化,即模糊化实验题目,清晰化工程实际,从而培养学生分析和解决实际工程问题的能力。还需注意这样一个问题,程序设计不同于其他基础课,对于相同的问题可能不只有一个标准答案,因此要使学生摆脱“所有问题都有答案,而且只有一个标准答案”[7]的思想束缚,同时利用多重答案的情况指导学生学会分析代码效率问题以及平衡代码效率和工程成本之间关系的思维方法,使其能够掌握“分析实际问题-明确工程需求-设计合理算法-编写程序代码-优化算法结构”的工程执行流程。
  

[2]