程序设计语言实验教学方法探讨

时间:2022-10-19 01:24:27

程序设计语言实验教学方法探讨

摘要:Java语言是现今比较流行的一门编程语言,教学中理论与实践是否同步、实验教学的好坏都直接影响着理论教学的效果。为此,结合该课程上机实验的实际情况,总结出了实验教学过程中存在的问题,给出了解决问题的方法。实验表明,这些方法取得了良好的教学效果。

关键字:程序设计;Java;实验教学;教学方法

中图分类号:G642.41

文献标志码:A

文章编号:1006-8228(2011)08-46-03

引言

Java语言作为Sun公司开发的一种编程语言,具有简单、面向对象、分布式、解释型、平台无关性、多线程等特征,由于其很好地解决了网络编程语言中的诸多问题,一经推出,便受到计算机界的普遍欢迎和接受,并得到了广泛应用,已经成为“21世纪首选的应用程序开发工具”。

Java语言是标志编程进入Intemet时代的里程碑。该语言充分考虑了互联网时代的特点,以“一次编写,随处运行”的理念定义了一种新的编程规范。Java的诞生必将对整个计算机产业产生深远的影响,对传统的计算模型提出了新的挑战。

目前在国内,Java语言程序设计已被我国各类高校列为计算机专业教学体系中的一门重要的主干课程。

学习Java程序设计有助于学生在掌握面向过程程序设计、可视化程序设计的基础上,掌握更深入的面向对象编程技术;学习Java程序设计的基本原理和方法有助于学生学习其它的面向对象程序设计语言。这门课程有助于提高学生的实践能力,让学生多掌握一门目前广泛使用的最新技术,既能完善学生的知识结构,又能提高学生的实践能力,从长期和短期都对学生大有裨益。

1、实验教学中存在的问题

程序设计语言课程是实践操作性很强的课程,不仅要求学生能准确地理解概念、基本原理,而且还要有一定的上机实践操作的能力。实验教学的目的一方面是对学生所学知识进行“理论验证”;另一方面是提高学生的“综合实践能力”,培养学生的创新精神。笔者通过近年的教学实践发现,实验教学环节存在着一些问题。

(1)在实验教学中,上机编写调试Java程序是学生遇到的困难之一,典型地表现在:部分学生不习惯或不愿意使用实验室安装的Java开发工具(考虑到多种因素,通常实验室计算机上只安装一种Java开发工具)。比如,笔者安装的JBuilder集成开发环境,因为其本身相对庞大,出现启动速度慢、运行程序过程中常出现死机等现象,有些学生不愿意使用这种工具。

(2)部分学生对实验环节不够重视。实验课上,部分学生旷课、部分学生上机想上网聊天、玩游戏,对教师布置的实验题目只是敷衍了事,有的甚至直接抄袭其他学生的程序。

(3)多数学生在编程调试过程中不讲求方法,不注重效率。这体现在两个方面,第一方面,学生不注重培养自身良好的编程风格。面对给定的实验题目,部分学生对问题不作整体分析,包括:题目要求具体做什么、应该有哪些功能、怎么没计数据结构、怎么给出算法等等,而是坐在电脑面前想到什么就写什么。第二方面,Java是面向对象的程序设计语言,组成程序的基本单位是类,有时一个源程序可能由多个类组成,多数学生都是在把整个程序写完之后才开始调试,难以纠错、

2、实验教学改进措施

2.1 为学生自主学习提供指导,在实验环节中对学生做出指导

学生对实验不太注重,原因之一是因为有厌学情绪,没有编写程序解决问题的兴趣,因此教师应该从培养学生兴趣方面采取一些有效的方法。

(1)激发学生的兴趣。在讲授程序设计语言的第一课,教师演示一些由学生自己编写的、有趣的程序,如五子棋程序等,从而吸引学生;同时教师最好在开始讲授这门语言之前就能给出实验题目。因为众所周知,熟练掌握并运用工具的目的是为了解决问题,程序设计语言是开发软件的工具,带着要解决的问题开展Java语言的教学,可以提高课堂教学效果,从而也会提高学生的实验质量。

(2)实验形式多样化,增强实验的趣味性。可将每次实验内容分成必做实验和选做实验两大类。必做实验包括涉及基本知识的实验;选做实验可以给出一些要扩张学生知识的程序,题型可以是有一定任务和背景的趣味编程,给出部分内容,由学生填写完成剩余任务的编程接龙等。选做的实验题目原则上不要太难,但是需要学生动动脑筋才能完成,如果太难反倒打击了学生的积极性。丰富的实验内容,在很大程度上可以调动学生的学习积极性;不同层次的实验题型,适应不同程度的学生。

(3)可以采取案例教学法。根据课程实验教学目标和实验教学内容的需要,以与现实生活紧密联系的、趣味性强的、与实验题目相似的案例为教材,组织学生站在理论的高度对案例进行审视、分析、讨论和交流等活动,使理论回到实践、指导实践,让学生在具体的问题情境中积极思考、主动探索,以培养学生认识问题、分析问题和解决问题等综合能力,加深学生对基本原理和概念的理解,提高教与学的质量和效果。实验案例设计要简短,便于学生理解,适合学生模仿,学生可以独立练习完成。我们在Java程序设计语言课程教学中,通过设计简短实用的实验案例,使学生很快掌握了知识点的实际用法,也加深了对理论知识的理解。

与传统的教学法相比,案例教学能使理论紧密联系实际,使学生成为教学活动的主体,从而为学生构建了一个自主学习、合作学习、研究性学习和探索性学习的开放式的学习情境,符合建构主义教学思想,更有利于学生的知识建构。

(4)可以采取“三段过程”实验教学方法。“三段过程”实验教学,就是模仿过程实验、完善过程实验、综合过程实验这三种类型实验形式。模仿过程实验是结合课堂教学内容,根据事先设计好的一些程序实例,学生按程序实例完成的一种实验。模仿过程实验是使学生对必要的理论和概念建立感性认知和掌握的过程。完善过程实验是在原有程序的基础上,逐渐改变和增加条件或对原有程序缺陷和存在的不足,提出解决方案和方法的一种实验。完善过程实验目的是使学生巩固所学知识,提升应用能力,培养科学的思维方式,提高对程序的分析理解能力和举一反三的编程综合能力。综合过程实验是通过应用程序设计或课题设计的综合性、系统性实验,使实验教学从单一程序设计,向多模块的应用程序设计转变。综合过程实验的目标是提高学生知识点的关联、衔接,组合和实践应用能力m。

(5)针对学生在实验过程中采用的方法效率低,教师在实验教学过程中应该指导学生如何完成实验题目,给出实现提示。同时在编写程序的过程中教师应该强化学生用软件工程方法学编写程序,进行需求分析,设计,实现,测试,维护等基本过程。类的设计在Java程序设计中处于核心地位,因为Java是纯面向对象语言,设计的主要工作就是定义类,类设计的好坏直接关系到程序的性能。在编写由多个类组成的源程序时,每定义好―个类,就应该编写测试代码对该类进行调试运行。

2.2 为学生自主学习提供帮助

(1)针对实验室安装的开发环境单一这种现象,在机器条件允许的情况下可以同时安装多个开发环境;另一方面,现在多数学生都有自己的计算机,教师可以给学生提供多个开发环境,让学生在自己的计算机上安装其感兴趣的开发环境。学生如何使用开发环境,教师可不作讲解,要求学生自学,以提高了学生的自学能力。

(2)重视学生调试程序能力的培养。在实验教学中,可以有意识、分阶段、分步骤讲解程序的调试方法,如:选择讲解错误信息以及可能出现的错误提示的原因及情况;让学生学会调试程序,并告诉学生调试程序的重要性,避免学生出错就叫老师,或放弃实验的现象。

学生调试程序时,会发现这样那样的问题,但是不理解出错信息。主要原因是学生的英语词汇量不够。教师应该编写一本编译出错信息对照表,帮助学生正确调试程序,这样学生调试出错了就很容易知道问题所在,并得以解决。同时实验教师也可以把精力放在培养学生的编程思维,提高学生对实际问题的解决上。

(3)给学生搭建多种自主学习平台。①现在是网络时代,教师应充分利用网络资源(学校教学平台,博客、电子邮件等)提供教学课件,便于学生课后自主学习与复习。可建立不同层次的题库,方便学生的自我检查;开辟讨论区与答疑区,随时对学生的学习问题进行解答;并开展讨论,提高学生的创新能力。②开放机房。Java语言是一门实践性很强的课程,大量的上机调试程序,可以帮助学生发现问题,理解问题,掌握程序设计的方法,锻炼创新能力,拓展逻辑思维,从而,帮助学生更好地学习Java程序设计语言。

2.3 推动监控和评价学生的自主学习过程

(1)为了促使学生提高编程水平,拓宽学生的编程思路,可以开展Java程序设计竞赛活动,调动学生的学习热情。组织Java程序设计小组也是提高大家学习兴趣的一种方式。在实验教学中,不能一味地让学生把自己孤立起来苦思冥想,可以采取分组竞赛活动,培养他们的良性竞争意识,从而达到提高学习兴趣的目的。比如“求1000之内的所有完数”这个例子。先介绍一种常见算法,其他方法让程序设计小组自主去解决,最后比较哪组使用方法最多,方法最巧,同时把这些好方法介绍给大家,鼓励大家去发现新思路、新方法,培养他们的创造性思维。还可以组织一部分编程能力强的同学参与一些小型程序的开发,这样既可以培养编程高手,又可以与社会实践相结合,使得学生能够学有所用,使他们尽快适应社会需求。定期开展程序设计竞赛,让感兴趣的同学挑战一下自己的编程能力,挖掘自身的潜力。实践证明这种竞赛活动不但可以帮助学生掌握多种语句的使用方法,还能培养他们多种角度分析问题的能力以及集体协作能力。

(2)为了保证实验的效果,应该对实验进行合理的监控和评价,并且加强考核。每次上机前要求将所布置的题目写成书面作业,上机时检查,否则不准上机。在每次上机时,要求在规定时间内独立完成实验习题,并根据完成练习题的数量、质量与时间,记录平时成绩。每次上机实习都要求学生必须写出规范的实验报告,在实验报告中一定要写出自己的心得。这样,每上一次机就有一次提高。同时,对实践环节要进行阶段性考核。考核的目标要明确,对学生提出的实验要求应该逐步提高。加大平时成绩和阶段性考核成绩在课程总成绩中所占比重。期末考试除笔试外,增加上机考试,要求学生在给定的时间内(比如两个小时)把指定的题目编写程序加以实现并运行出结果。教师应给出评分标准。

3、结束语

程序设计语言实践操作性很强,实验教学的好坏直接影响着理论教学的效果。本文以Java语言为例,归纳了几点实验教学过程中存在的问题,提出了“指导学生自主学习、帮助学生自主学习、促进学生自主学习”,即“导学+助学+促学”的Java实验教学方法。此方法取得了满意的效果,学生反映良好,学生的学习态度也更为主动,学习成绩有较大提高。

总之,“导学+助学+促学”的实验教学法有利于提高学生分析问题、解决问题的能力,可取得事半功倍的效果。当然,这种实验教学模式是对该课程传统实验教学方法的一次改革,无论对学生还是对教师都提出了更高的要求,师生都需要有一个适应过程,实施的具体方法和措施也有待进一步探索和完善。

参考文献:

[1]阎菲.Java程序设计教程[M].中国水利水电出版社,2004.

[2]张白一,崔尚森.面向对象程序设计――Java[M].西安电子科技大学出版社,2003.

[3]孙伟.“Java程序设计”课程的教学改革与实践[J].计算机时代,2005.11.

[4]苏华.“C语言程序设计”课程实验教学改革与实践[J].中国教育导刊,2005.5.

上一篇:Multisim和Matlab软件在电路仿真中的应用比较 下一篇:基于UCD理论的教学设计研究