崔仙姬 黄山 刘文鹏
摘要:针对目前高校Java课程无法适应IT企业招聘人才的问题,分析Java教学过程中存在的主要问题,提出以实践为导向的高级程序设计课程教学模式,重视课内实践教学,改进实践考核方式,推动学生的学习积极性,提高学生Java编程技能和解决项目问题的能力,达到较好的教学效果。
关键词:Java;实践能力;教学改革;考核方式;评价方式
中图分类号:G642 文献标识码:A
文章编号:1009-3044(2019)16-0138-02
开放科学(资源服务)标识码(OSID):
Abstract: In view of the fact that the current Java curriculum of colleges cannot meet the needs of IT enterprise recruitment, the main problems in the process of Java teaching are analyzed. Then, the practice-oriented teaching mode of high-level programming curriculum, which pay attention to the practical teaching in class and improve the way of practice assessment, is proposed to promote the students' learning enthusiasm, improve the programming skills and problem-solving abilities, and further achieve better teaching efficiency.
Key words:Java; practical ability; teaching reform; assessment method; evaluation method
1 引言
Java是一门面向对象的程序设计语言,因其具有平台无關性、安全性、多线程及良好的并发机制,应用广泛,成为计算机及相关领域最受欢迎的开发语言之一。在2018年的TIOBE编程语言排行榜中,Java语言排行第一[1],占编程语言市场的14.94%。1
为了适应社会人才需求,国内很多高等院校计算机及相关专业开设了高级程序设计课程。该课程通过Java应用程序的设计、分析与开发,旨在让学生掌握面向对象程序设计的基本思想和基本方法,为后续软件开发类课程的学习提供坚实的基础。然而,IT企业却很难招聘到合格的Java工作人员,其主要原因是学生在校期间所掌握的Java技能与经验,与用人单位需求差距较大[2,3]。本文结合大连民族大学电子信息工程专业人才培养方案,通过分析本校高级程序设计课程教学过程中存在的问题,提出一种以实践为导向的课程教学改革模式,进一步提高学生的编程能力。
2 教学过程中存在的问题
高级程序设计是大连民族大学电子信息工程专业的一门重要的专业必修课,课程通过平时成绩、上机成绩、期末考试进行考核。通过分析2013-2015级电子信息专业6个教学班的期末考试成绩发现,学生的理论考试平均成绩为80.32分,上机实践平均成绩为62.9分。成绩结果表明学生普遍对课堂讲授的知识点掌握较好且上机实践成绩普遍低于理论考试成绩。说明学生的实践操作能力落后于其对理论知识的掌握,无法将理论知识灵活运用于实际程序编程中。
另一方面,从软件开发综合实训、Android应用程序开发、Web应用开发等后续课程实施阶段发现,学生的动手能力较弱,表现在学生无法熟练运用工具进行知识的搜索,没有良好的自学习惯与方法,缺乏独立思考的能力。究其原因,主要体现在如下几个方面[4,5]:
1) 学生对课程认识不足,缺乏学习主动性。学生觉得考试过了就行,以后实际应用中不一定能用得上,学习兴趣不高。另一方面,实际课程学习有一定的难度,,前期学习过程中有困难不及时解决,后期跟不上。
2) 上机课效果不佳。上机课内容多时间短,课后无法完成上机内容,教师的指导停留在代码纠错上,意义不大,学生自学能力与综合素质都无法提高。
3) 实践能力差,编程练习不足。学生课下编程练习不足,上机编程能力未达到标准,未能在指定学时完成上机内容。
4) 教学评价标准单一,高校的课程评价方式采用终结性评价,在课程教学结束时通过期末考试或大作业的形式给出相应的分数或等级成绩来完成评价。这种课程评价方式过于简单,忽略了学生作为主体的作用,无法调用学生参与课程的积极性。
3 实践教学模式改革措施
Java具有较强的应用工程背景,需要注重理论与实践的相互结合与促进。本文从培养学生学习兴趣、 课内实践课程改革、考核方式改革等方面进行实践教学模式的改革,旨在于学生实际编程能力的培养。
3.1 培养学生的学习兴趣
兴趣是最好的老师,高级程序设计课程教学过程中出现的诸多问题究其原因是学生缺乏学习的动力。解决的方法就在于激发其学习兴趣和信心,最好的途径就是一方面让学生认识到高级程序设计的重要性,另一方面让学生自己动手解决实际问题,让其能力得到肯定和承认,让其体会到成功的快乐,从而增强学习动力。
课程开始之时就对高级程序设计课程“为什么学、学什么、怎么学”等三个方面进行课程介绍,便于学生明确学习java语言的目标,引导学生充分认识学习Java语言的重要性。首先,强调Java语言的地位,了解当下IT行业对Java相关从业人员岗位技能需求,帮助学生确定学习目标,提升学生对Java语言的学习兴趣。尤其对于以后想从事程序设计和开发人员的学生而言,学习和熟练掌握Java语言是拓展职业生涯最重要的一项基本技能。之后,对课程所要讲授内容进行简单介绍,以实际案例介绍,使学生对所要学的内容知识体系有直观了解。最后,从学习工具,相关的参考资料介绍该如何学习课程。
3.2 实践课程教学改革
高级程序设计实践性很强,需要特别注重学生的实际编程能力,要求采用良好的教学方法与考核方法。本课程在理论教学的基础上,结合上机课程、上机考试以及课下综合训练项目提高学生上机实践能力。
理论教学以课堂讲授为主,结合案例共同实施。课堂教学中采用多媒体动画、集成开发工具使用及恰当的板书等教学手段,根据课程内容灵活使用难点剖析、启发式、案例讲解等多种教学方法,目的在于学生理解面向对象程序设计的基本思想与方法,Java语言程序分析与设计能力。
针对Java课程上机实践教学实践有限的问题,提高上机内容的实用性,选择与理论课内容相符合且有实际意义的题目,便于学生从工程角度理解实际问题。另一方面,具体上机课程教学过程中,需要重视学生的主体作用,教师主要是引导与辅导的作用。上机课程要求学生自带笔记本电脑参与编程,要求学生充分预习。教师提前布置上机任务,要求学生根据给出的相关知识点在上机课前复习理论知识,课下完成上机代码,上机课程开始教师将考核学生上机完成情况,要求学生按组讲解上机完成内容,讲解代码。教师对学生掌握较好的知识点不再讲授,对普遍性问题进行重点讲解,力求每次上机课学生都能准确把握知识点内容,将其应用在具体实践中。课程教学过程中重点进行思路的讲解和分析,引导学生思考解决方法,学生充分思考后,让具有不同解决方法的学生分别讲述自己的项目解决思路,教师引导全体同学对不同的解决办法进行比较讨论,达到知识的巩固和共享。
增加了2次综合训练项目,采用课下开放式实施,目的在于培养和提升学生综合运用所学知识对Java应用程序进行分析与设计的能力。综合训练项目以3-4人为一组,人员自由组合为主,教师分配为辅。通过网络资源平台(CSDN、Java文档)、图书馆等途径加深对Java应用程序设计技术的理解,综合运用所学知识设计简单的Java应用程序。
3.3 评价方式的改革
课程评价是课程教学的关键环节,是提高学生学习积极性的重要手段。科学合理的评价方式能够带动学生的积极性,激发学习兴趣,充分带动学生主观能动性,提高学生的综合素质。
本课程重点采用过程化考核方式,持续采用过程性评价来指导和引领教学,激发学生的学习主动性,帮助学生达到期望的学习目标。本课程考核由平时成绩、上机成绩、综合训练和期末上机考试四个部分组成。平时成绩主要通过随堂测试和课下作业进行考核,主要评价学生对课堂知识点的理解和掌握程度。上机成绩通过结合过程性评价和验收考核进行综合评定,重点考查上机过程中的表现、知识掌握和运用情况、集成开发工具操作熟练程度、实践动手能力等。综合训练項目根据学生完成的项目情况和报告完成情况,给出成绩,主要考核学生知识的综合运用能力以及对Java应用程序的分析与设计能力。期末上机考试部分分为理论知识点考核与上机编码考核,分别占总成绩的30%与70%。重点考核学生对面向对象程序设计的基本思想与技术的掌握程度,考核学生运用所学编程知识分析系统与解决问题的能力。最后,通过学生反馈,得到上机考试的实施效果,总结上机考试成功经验与改进问题。
在2017-2018第二学期期末考试结束后,对2016级电子信息工程专业2个教学班的理论考试与上机考试进行了分析,进行改革之后,理论考试成绩为87.52,上机考试平均成绩为71.4。上机内容的考核,从考试结果来看,提升了学生对上机课程的重视程度,能够体现课程的重视程度,同时也提高了理论成绩
4 结束语
高级程序设计课程改革中,教师们对以往的教学进行了分析,针对学生缺乏主动性、实践能力差、教学评价方法单一等方面的问题,进行了相应的教学改革,在保证理论课程教学质量的前提下,将重点放在上机课程教学与考核中,得到了一定的效果,提高了学生的动手能力与解决问题的能力。
注释:
1. TIOBE排行榜是根据互联网上有经验的程序员、课程和第三方厂商的数量,并使用搜索引擎(如Google、Bing、Yahoo!)以及Wikipedia、Amazon、YouTube统计出排名数据,反映某个编程语言的热门程度
参考文献:
[1]编程语言排行榜[EB/OL],[2018-3-5]https://www.tiobe.com/tiobe-index/.
[2]李东明,赵伟.Java语言课程实践教学改革[J].计算机教育,2011(13):122-125.
[3]姚明,彭志平,李启锐,项顺伯.Java课内实践教学改革[J].计算机教育,2016(6):151-154.
[4]史书明.Java程序设计课程的多元化教学改革研究[J].常州工学院学报,2016,29(4):90-96.
[5]李韦红.高职院校Java程序设计课程教学改革与探索研究[J].电脑知识与技术,2018,14(28):147-148.
【通联编辑:王力】