应用型高校Java语言程序设计教学研究与实践
朱强++周晓
摘要:针对Java语言程序设计课程在应用型高校计算机专业的课程定位,详细分析了教学现状和效果,系统性地改进了教学方法和手段、实践教学和考核方式,培养了学生的工程实践能力,提高了课程的教学质量和效果。
关键词:应用型高校;竞赛驱动;项目驱动;教学方法
中图分类号:G642 文献标识码:A 文章编号:1009-3044(2016)11-0145-02
Abstract: Aimingatthe orientation of Java Programming inapplied university,the paper analyzs the currnet teaching situation and effect in detail, improves teaching methods and means, practical teaching and assessment methods, these cultivate students' engineering practice ability and improve the teaching quality and effect.
Key words: applied university;contest driven;project driven;teaching method
Java语言是一种被广泛使用的跨平台的面向对象的程序设计语言,国内高校的计算机类专业也都开设了这门课程。由于Java语言程序设计课程是一门应用性特别强的课程,不仅培养学生的面向对象的理论知识,也强调必须在使用中学习,在使用中巩固。但传统的教学方式和方法常常导致很多学生出现厌学情况[1],学生学习的主动性和积极性不高,利用课程知识编程实践的能力也较弱。为了改变这种情况,提高教学效果,课程组改革了教学手段、方法、内容、实践教学形式和内容、考核方式等,提高了教学效果。
1 Java语言程序设计教学现状
1.1 教学内容不合理
改革前的《Java语言程序设计》课程的学时为48学时,其中32为理论教学,16为课内实验,上课内容也集中在语法的讲解上,而忽视了在应用中学习语言,学会语言,枯燥的语法知识及生搬硬套的案例都导致了学生学习兴趣不高,甚至厌学;课时的分配没有反映应用性课程的特点,较少学时的实验也使得想通过实验培养学生的动手能力也流于形式。
1.2 教学方法手段单一
利用多媒体教室进行《Java语言程序设计》课程的讲解,这种形式虽然可以板书和ppt结合的形式呈现Java的某些复杂知识。但是,这样的教学方法太单一化了,一方面ppt的使用加快了课程知识点的进展,导致学生无法及时跟上,;另一方面学生缺少及时的互动交流和亲手体验,在加上所有的程序样例都是现有的,导致学生缺少程序在生产过程中出现的如程序代码风格、调试方法过程等情况的认知,而这些认知洽洽能提高学生的工程实践能力和编程实践能力。
1.3考核方法不合理
《Java语言程序设计》课程考核合成总分是期末卷面成绩占百分之五十,实验成绩占百分之三十,平时成绩占百分之二十。这种考核形式仅能反映学生对知识点的掌握程度,并没有反映学生的实际动手操作能力,应该导入多种考核方式,这样才能很好的反映应用性很强的《Java语言程序设计》这门课程的特点,并以此为动力,训练学生的动手操作能力。
2 具体改革措施
2.1以应用能力培养为核心,优化教学内容
首先,修改课程学时分配,在总学时不变的情况下,不在具体的区分理论学时和实验学时,而是将上课教师移到实验室进行,一边进行理论知识的讲解,一边让学生动手实践,并保证总理论时长不超过学生自主操作时长;课程组对课程标程做了较大幅度的修改,从多本教材中提炼出比较实用的知识点,以知识点形成教学模块[2],进行课程的教学。同时适当地拓展教学内容,引入标注、泛型和设计模式等模块。扩展与java应用相关的知识,如JSP、Tomcat、Android等,形成一套统一的Java知识应用体系结构。
2.2改革实践环节,加大课余时间的实验室开放力度
课程组决定一次课程安排3节课,上课地点选择在实验室进行,并将较多的时间留给学生自己完成项目的模仿开发,边讲边练,边练边做,边做边学,在此过程中,学生的问题被集中在课堂向全部学生讲解。另外,尽早地给出课程设计题目,以便学生有足够的时间进行需求分析的调研和系统的设计,在和教师的讨论中不断的修改,最后完成项目的实现。
同时,加大实验室的开放力度,并合理安排高年级学生或助教进行辅导答疑,或者授课教师网络教学平台和、QQ等即时通讯工具进行辅导。每完成一个项目,每位学生都要有相应的知识点总结和心得体会。
2.3 改革教学方法和手段
灵活使用“启发式教学”、“任务驱动”等方法[3],全面推行“学中练,练中学”教学思路。通过各种教学方式和手段激发学生的学习欲望,启发学生发现问题并逐步解决问题。例如,在讲解程序设计时,不是直接地地给出程序代码,而是首先分析问题,然后找出解决问题的方法,再给出数学模型和算法,最后编程实现,编程实验要在课题上进行。要让学生学会思考问题、解决问题,从而掌握独立分析问题、解决问题的方法;引入企业工程部分内容,以增强学生的工程实践能力。
2.4 以“竞赛驱动”激发学生的求知欲
引入与程序设计相关的学科竞赛,以“竞赛驱动”,激发学生的求知欲[4]。计算机学院现有ACM等多个竞赛小组,要求学生要进入不同的竞赛项目组,学院定期自主组织的程序设计大赛,同时,多角度地给学生引入高质量的竞赛项目,例如全国软件设计大赛、安徽省程序设计大赛、中国大学生服务外包创新创业大赛等、获得众多公司和高校认可的CCF的CSP认证考试等竞赛活动,这些竞赛活动会持续到整个大学结束,所以的改变了传统考过就丢的习惯,而且,竞赛的这个过程也拓宽了学生的视野和知识面,加深了他们对程序设计课程的理解和学习兴趣。
2.5引入多种考核方式
学生期末成绩有多种方式灵活考核,既可以参考传统的纸质试卷[5],也可以全部使用电子试卷,试卷内容也从改革前的多种体型向能体项编程实践能力的唯一题型编程题过度;参加CSP认证等认证并获得理想成绩的可以等同期末考试;参加各种竞赛活动获得一定奖项的也可以等同于期末考试;或者以提交的软件作品可进行课程期末免考等多种考试形式。
3 结束语
综上所述,相应的改革都是以提高学生的编程实践能力为核心,改革教学方法、手段、内容、实践教学等环节来激发学生的学习兴趣,培养学生的学习主动性和能动性,充分体现了学科的应用性特点,提高了课程的整体教学效果。当然,在实施的过程中也产生了一些问题,主要表现在缺少好的工程项目资源库,企业工程师的引入费用太高,没有足够的资源形成一个合理的多个小团队形成的能将软件产品包装推广的创新创业工作室。
参考文献:
[1] 张冀先.高级程序设计课程教学研究及探讨[J].实验科学与技术.2015,13(3):161-162.
[2] 刘艳梅.基于“实践和创新”能力培养的Java系列课程群教学研究与改革[J].计算机教育,2015(14):35-40.
[3] 喻晓,陈涛.应用型本科Java语言程序设计课程教学改革研究[J].软件导刊,2014(10).
[4] 徐胜舟.以学科竞赛驱动程序设计类课程教学改革研究[J].软件导刊. 2015(5):180-182.
[5] 刘宏,宋久科.Java语言程序设计教学改革探析[J].教育与职业,2013(9):134-135.