Java语言课程实践教学改革

时间:2022-07-29 12:40:47

Java语言课程实践教学改革

摘要:针对目前本科的Java语言课程实践教学中存在的不足,提出改革实践教学的内容、开放式实验室建设、考核制度的转变等措施。同时还阐述了课程组教师自主研发的Java语言上机实验平台,它在改善Java语言的实践教学,激发学生学习兴趣,适应创新人才培养需要等方面发挥了良好作用。

关键词:Java语言;实践教学;激发教育;开放式实验室

Java语言课程是计算机科学与技术专业必修的一门专业课,我们的教学目标是培养学生的软件开发能力,教学思路是由浅入深、理论与实践相结合,激发学生的学习兴趣,培养学生的分析能力、实际动手能力、创新能力和社会竞争力。Java语言的教学不同于数学和自然科学学科,它更强调动手和实践,更强调解决工程问题,实践课程应突出基本技能和动手能力的训练、团队合作能力训练。因此,改革Java语言的实践教学势在必行。

1改革实践教学内容

实践教学是Java语言课程必不可少的环节,是培养学生上机动手操作能力、知识综合运用能力的必需环节。实践教学的质量直接影响学生的工程实践能力和就业机会,有足够理由让教师精心设计实践教学的内容,改进实践教学。我校从2002年开始,在本科教学中开设Java语言课程,多年来一直在探索实践教学改革,并取得了一些成果,我们主要从以下几个方面进行实践教学内容改革。

1.1调整理论教学内容

Java语言课程[1]一般包括Java程序设计语言基础、Java高级程序设计两个部分。该课程的重点是Java语言的面向对象中语言基础、类与对象、继承与多态、多线程、文件、数据库编程,课程的难点在于线程程序设计、数据库访问程序设计和网络编程。在教学过程中,先导课“C++程序设计”中基本语法结构、面向对象的一般概念和原理与本课程的学习进行对比,加深教学效果,节省学时,主要以案例的方式进行教学。通过与C++课程的对比,来展示Java语言的特性和基本语法格式,使学生体会到学习Java语言的必要性,激发学习兴趣。对于Java语言中的GUI图像用户界面部分的知识以项目教学方式进行,不作为教学的主要内容,因为实际开发中,多数编写的是基于B/S结构的Web应用程序。

Java语言课程学时调整前后如表1所示,在总学时不变的情况下,适当增加实验课时。同时理论教师在程序代码讲授方式上,有三种方式:幻灯片讲解、课堂上打开开发工具一边编写代码一边讲解、将编好的代码导入开发工具讲解。这三种方式有各自的优缺点,在教学中为了激发学生的兴趣,尽量将要解决的问题现场编写代码,让学生体会理论的实现过程;如果处理的问题较复杂,教师在课前用几个小时编写好代码,课堂上边讲解边演示运行过程,将关键的知识点总结,尽量用实例解决实际问题。

1.2构建实践教学体系

Java语言教学实践必须形成体系[2],学生能力的培养是渐进的。从2006年开始,我们对培养应用型本科计算机专业人才培养方案进行了调整,以Java语言为例,对实践教学体系进行改革,其中实践教学内容是构建实践教学体系的一个方面,实验题目的选择非常关键,我们选择具有实际意义的题目,而不是简单的输入输出处理,从工程的角度,让学生解决实际的问题,题目主要来源于教师的科研项目。实验教学内容如表2所示。

近年来,实践教学体系的构建也日渐成熟,我们结合学校的实际情况结合区域经济和发展前景,以及社会对计算机人才的需求,以培养学生的“创新能力”、“实践动手能力”、“团队合作能力”为出发点,将实验课程分为三个阶段:验证性实验阶段、设计性实验阶段和综合性实验阶段,使三者相互联系、紧密结合,在安排上由浅入深,逐步与实际应用接轨[3],如图1所示。我们从2007年开始,为学生提供更好的实验环境,学院开始进行开放式实验室建设,使学生有更多的动手机会,激发其强烈的求知欲,给学生足够的探索空间和创造能力。

1) 验证性实验。

验证性实验是教师编写实验指导书,按照应学习的知识点,有步骤的实验,学生负责验证实验结果或者填写简单的语句将程序调试通过。例如,学会安装使用JDK环境和MyEclipse开发环境、编写简单类及对象、IP地址的读取与转换、文件的读写操作等,通过此阶段的实验,让学生了解基本的原理、概念、知识点,培养学生的基本实验能力,以强化基本知识。Java语言课程的实验课24学时,验证性实验占用4~6学时为宜,如果时间不够,让学生在课外实验中完成。

2) 设计性实验。

设计性实验是由教师给定项目的题目和需求,学生根据学习的理论知识来设计算法、编写代码、测试、编写实验报告的过程。学生对项目的需求进一步分析,建立需求模型,编写算法,最后编写Java程序实现,培养学生的动手能力,知识的综合能力,严谨的治学作风。在整个实验过程中分组进行,学生以每组5~6人,分模块完成,培养学生的团队合作精神。另外,我校每年组织学生除参加ACM大赛外,还可以让学生以团队合作的方式积极参加每年一次的学校组织的“大学生挑战杯程序设计大赛”及全国的“大学生挑战杯”课外学术科技作品竞赛等。在学时安排方面,设计性实验10学时,要求教师给出用到的理论及技术难点的解决方案。

3) 综合性实验。

综合性试验是教师给定项目的可选题目,这些题目主要来源于教师的科研项目和前沿的领域技术,解决目前急需解决的问题,并且以Java语言为开发语言,综合运用与本课程相关的课程知识,比如:数据结构、数据库原理、算法设计与分析、软件工程及人工智能等相关学科的知识,来解决问题。培养学生的软件工程能力,独立进行需求获取、需求分析、规格说明、编写代码及测试,并编写相应的文档。通过综合性试验再结合我校的开放式实验室题目,让学生体会到软件公司中开发项目的流程,这对教师的要求较高,较难的模块要给学生攻关性的指导,帮助学生进行需求的可行性分析等。综合性试验10学时,再根据项目的规模增加学时,也可以结合后续的课程设计,完成最终的成果。

4) 课程设计。

本课程的课程设计为2周,教师针对性的选取5~8个项目,以分组的方式,独立完成。在综合性实验阶段的大型项目可以在课程设计阶段继续完成,并结合开放式实验室开发项目,在教师的指导下,学生以团队的方式独立完成整个项目的需求分析、系统设计、详细设计、编码、测试、编写文档的过程,即按软件工程的要求,完成课程设计的目的。最后,一天各组演示开发的系统并制作答辩短片或幻灯片,根据打分情况排名。

1.3建立项目案例库

国内很多教师在计算机专业课程的教学中提出“案例教学和项目教学”,关于案例库的建立常被忽略,如何建立案例库这一教学中非常重要的资源,我们将Roger Schank提出“基于案例推理技术(CBR技术)”应用在教学中。在实践教学中,我们开发的项目案例库软件系统,本系统的主要功能是将Java语言课程实践中的项目存储在案例库中,定期对案例库维护包括修改项目案例、增加新的案例、删除陈旧的案例。将公司中的真实项目有选择地存入案例库,学生开发的案例、教师的科研项目等都存入案例库,以此来丰富教学资源,这非常有助于实践教学,实践证明,案例库的开发提高了实践教学的质量和效率。

2开放式实验室建设

随着国家对高等教育投入的增加,我校结合自身的情况,加大对计算机专业设备的投入力度,从2007年开始,信息技术学院新增了网络实验室、程序设计基础实验室、硬件实验室,学院为了提高学生的动手能力,相继开放了上述的实验室,各门课程的教师根据课程需要向院里提出申请,统一安排实验室的开放计划。Java课程组的教师根据实践课程的情况,成功的编写了一套实验室开放计划并得到院里的认可,我们主要从实验室开放管理模式、开放式实验题目的选择、对教师的要求几个方面深入研究,提出合理的实践教学方案,并取得较好的效果。

2.1开放实验室管理模式

针对实践教学的具体情况,开放式实验室的管理模式采用半开放或全开放实验教学形式的多元化管理。对于验证性试验采用规定开放时间,设计性实验和综合性试验采用全开放式实验时间,有组织、有计划的让学生独立、自主、团队的方式进行实验,课程组教师轮流值班的形式,跟踪实验的全程,而不是学生放任自流,是让学生在相对宽松的环境下工作,激发学生自主学习的能力,培养创造能力、团队合作能力和创新能力。

2.2开放式实验题目设计

开放式实验题目的选择是多元的,我院规定每学期带课程设计的教师必须给出5~10个实践教学题目,结合教师的科研和案例库中的题目,在Java语言实践教学中,将多方面来源的题目作为学生的开放式实验题目,学生可以自由组合、自由选题,当然主讲教师还要最终把关,如题目的重复率、难度、分组的合理性等方面做细微的调整。

我校作为农业院校,交叉学科的体现更加明显,农业专家系统的开发应用到农学等其他专业,这也为计算机专业学生提供更多的机会帮助其他专业开发应用软件,并且跨专业的学生团队合作也非常多,学生的专业能力明显提高。

2.3实验平台的开发

作为Java语言课程教师,深深体会到学生软件开发能力的培养的重要性,为此,开发了“基于B/S结构的Java语言上机实验平台”的功能图,如图2所示。本课程实践教学平台的搭建可以辅助教学,为实验室运行服务提供高效、严格的管理,还可以全面提升实验室教学功能和开发程度,为其他课程的实验教学提供参考。

3改革考核制度

Java语言是实践性很强的课程,原来的考核方式为:课程成绩=理论考试(占总分70%)+实验成绩(占总分30%)。

其中,实验成绩包括平时出勤10%、实验完成质量10%、课堂表现5%和课后作业5%。很明显,重理论轻实践,这使学生对实践环节不够重视,因此应加大实践考核的比重,激励学生的学习热情,培养学生的动手能力。对课程成绩评定如下方式:

课程成绩=理论考试(占总分40%)+平时实验成绩 (占总分30%)+上机考试(占总分30%)。

其中,平时实验成绩包括验证性实验5%、设计性实验10%和综合性实验成绩15%;上机考试要求时间为2小时,独立完成教师给定的题目,根据学生的算法设计的科学性、创新性、代码的质量、测试数据的验证、软件文档编写等方面综合给出评价。

改革后的考核方式更强调实践的重要性,采用以实践为导向的考核方式[4],激发学生的学习兴趣,培养其动手能力,对本课程的学习重点更加突出。

4结语

在Java语言的教学中,我们虽然取得初步的成果,但还要不断地实践,探索建设产学研相结合的教学模式,激发学生的学习兴趣,考虑Java课程群的建设,以适应IT企业对Java工程师的要求。教师还要在教学中积极思考与探索,使教学与科研相结合,深入企业,了解计算机学科的前沿领域。

参考文献:

[1] 叶乃文,. Java语言程序设计教程[M]. 北京:机械工业出版社,2010:82-90.

[2] 刘松青. 构建“Java面向对象程序设计”实践教学体系[J]. 计算机教育,2009(8):8-10.

[3] 李小昱,王为,胡波. 研究型实验教学改革的探索与思考[J]. 实验室研究与探索,2008,27(6):105-107.

[4] 陈昊. Java语言实验教学改革探讨[J]. 计算机教育,2009(10):148-150.

Practice Teaching on Java Programming

LI Dongming, ZHAO Wei

(College of Information Technology, Jilin Agriculture University, Changchun 130118, China)

Abstract: Because there are some shortcomings of undergraduate course in the current practice teaching of Java Programming, this article proposes to some measure such as reform the content of practice teaching, the opening laboratory’s construction, change the mode of examination and so on. Besides, the teaching team has created the experiment platform of Java Programming. Our work can improve the practice teaching of Java Programming, stimulate students’ learning interest, which to meet the demand of innovative talents cultivation.

Key words: Java Programming; practice teaching; stimulate education; open lab

上一篇:习明纳对提高学生学习主动性的作用研究 下一篇:从实战中培养工程硕士开发大型软件项目的能力