论文部分内容阅读
【摘要】鉴于Java语言的普及和流行性,开设Java语言课程是大势所趋。如何提高Java语言教学效果是高校承担Java教学任务的老师一直探讨的热点话题。结合多年的教学经验,对Java教学中存在的问题进行分析,从教学管理、教学内容、教学方法和考核方式等方面提出整套改进措施,实践表明,该教学思路对培养学生语言应用和程序设计能力方面取得良好的教学效果。
【关键词】Java 教学质量 项目 任务 考核
【中图分类号】G642 【文献标识码】A 【文章编号】2095-3089(2013)09-0136-02
目前在程序设计应用领域,面向对象的Java语言编程和相关的Java技术应用相当广泛,Java语言成为主流的程序设计开发语言之一。掌握Java技术其就业面广,学生可从事B/S网站设计,论坛开发、网络和手机游戏开发、嵌入式开发、智能手机开发、无线设备程序设计、图形图像处理、网络数据处理等工作。而Java程序设计课程作为Java系列课程的基础课程,学生对其掌握的好坏程度直接影响对后继系列课程的学习,进而影响到将来的就业等问题。因此,各高校老师都对Java的教学进行大量的研究,以期不断提高教学质量[1]。其努力研究的成果都对各自高校的Java的教学起到了重大作用[2-4]。
提高Java教学质量,为培养符合企业要求的Java人才,便成为当前教学中一个亟待解决的问题。结合学校的Java教学情况,对存在的问题进行举例分析,从教学管理、教学内容、教学方法和考核方式等方面提出整套改进措施,在实施中取得了比较理想的效果。
1.Java教学中存在的问题及分析
1.1 课程内容缺乏实用性,学生学习兴趣不浓
Java语言课程是实践性较强的一门课程,但各种参考教材都偏重基础理论知识的讲解,实验内容大都是验证型的,且与实际应用严重脱节,学习起来容易乏味,因此学生在学习中逐渐丧失兴趣。另外,课程开在大四,缺乏后续课程支持,学生学完语言不知道用在哪儿,怎么用,不能解决实际问题。不可忽视的一点就是大四学生通常忙于找工作、考研、谈恋爱、贪玩等很多方面都影响教学。
1.2 学生先入为主,认为Java很难不愿挑战
Java是纯面向对象的语言,需要学生用面向对象的概念进行思考和设计,这对于大多学生来说是一种新的体验和挑战。很多学生反应不知该如何理解“面向对象”,对于“对象”可以做什么以及怎么做而感到困惑,甚至很多学生学完后还不知道什么是面向对象编程,和面向过程编程有什么区别。另外,程序设计不仅要求设计者具有很强的逻辑思维能力,思路清晰,而且要求设计者能不断自我学习,以适应现代编程技术的变化。所有这些都对一些学生造成了学习压力,进而导致害怕编程。
1.3过于重视语法,实践教学不够,忽略了学生动手能力的培养
老师授课时,大都按照备课的顺序,逐层逐次的把教材中的知识都一一罗列,详细讲解,为了学生能听懂,甚至不厌其烦的讲几遍,仅顾及了理论知识的讲授,没有结构良好的Java程序的支持,虽然符合教学大纲的要求,但却忽略了应用知识能力和编程思想的培养。这些都暴露了程序设计教学中注重语法细节、忽略总体思想方法和整体过程实现的问题。另外教师在教学的过程中缺乏实际的项目教学,学生的使用技能和动手能力得不到培养。
1.4考核形式传统
(1)考核形式通常为以理论知识为重点的期末闭卷考试。这种单一的考核形式不利于教学效果的评定,更不利于全面、真实考核学生灵活掌握知识、使用技能的能力。
(2)考试内容片面,内容局限在该门课程所采用的教材,而且,考试前的复习中,老师通常会划定范围和考试重点,学生就会采用考前突击,甚至打小抄而取得较好成绩。这样的考试无法真正检查学生的学习效果和教师的教学效果。
(3)重结果轻过程,在计算课程最终成绩的时候,采用平时10%,实验20%,期末70%来综合计算。最终成绩主要还是期末考试一锤定音,学生在平时的学习过程中,积极思考、积极动手实践、创新的方面在最终成绩上体现很少。
2.Java教学改进
2.1 Java课程设置调整
首先,学期由第七学期调整到第五学期,使学生不受大四的繁杂事情的干扰,能够潜心学习。课程调整为Java程序设计作为Java系列课程的第一门课程,设置系列后继课程有动态网站开发、移动平台开发、开源框架集成项目实战,嵌入式开发,安卓游戏开发等,使学生以兴趣选定方向,激发学习动力,目的是让学生掌握面向对象的程序设计的思想和面向对象程序设计编码的硬功夫。
2.2教学内容的整合、形象分析、抽象归纳讲授困难理论
学生在学习Java程序设计前已学习了C++语言,对程序的基本控制结构有一定的基础,那么在Java程序设计的教学中,前面的基本语法、控制结构以及数组和方法部分的教学时间就可以压缩,采取精讲,突出Java和C++不同的地方即可。对于这部分知识,多以学生为主导,让学生通过讲述来发现自己对基本知识掌握不足的地方,从而抓紧弥补。与学生不断互动,举例形象分析,让学生通过已知迁移到新的东西,通过抽象归纳,总结Java抽象的概念和思维方式,促进学生不断学习查漏补缺,取得了较好的教学效果。下面通过几个例子进行说明:
学习类和对象时,引导学生思考一些现实对象,比如学生自己手中的不同手机,各门课程的教材等,学生很快就能归纳出手机类、教材类,进而更抽象为通讯类、书籍类,让学生逐步建立起面向对象的分层抽象思维习惯。
学习虚拟机时,把某学生类比为字节码文件,在不同平台(爸妈家,爷爷家,外婆家)都能被识别,这说明每一个家(平台)都有个内置特定的东西(相当于虚拟机)在起作用,从而将一个类似虚拟机的抽象概念通俗化,使学生轻松掌握。 学习接口时,利用学生买无线网卡上网的例子,说明网卡插槽,就是一个接口,接口不实现功能,因为接口是个抽象类,而只有买来实现了接口所要求实现的上网功能的网卡,才能进行上网工作。
2.3注重编程思想的训练
学习一种编程语言或开发工具,语法结构、功能调用是次要的,也不困难。困难的是学生没有掌握编程思想,找不到编程感觉,从而感觉学习语言课和其他理论课程没什么区别,就是考试拿学分。所以,学习一门语言,引导学生最主要是学习它的思想。例如学习Java就要学习面向对象的内在机理、什么是线程、接口等;学习COM 就要知道VTALBE 、类厂、接口、idl等,有了思想,那么就可以触类旁通。告诫学生要掌握编程思想必须在编程实际中去实践和体会。编程起步阶段必须自己动手设计程序,具体设计时不要拘泥于固定的思维方式,遇到问题要多想几种解决的方案。要求多交流,各人的思维方式不同、角度各异,各有高招,通过交流可不断吸收别人的长处,丰富编程实践,帮助自己提高水平。
2.4 项目驱动教学
“项目教学法”是通过实施完整的项目来进行的教学活动,其目的就是要在课堂教学中把理论与实践教学有机地结合起来,充分发掘学生的创造潜能,训练学生小组协作和团队精神,让学生在应用中学习,在实践需要时学习,从而提高学生解决实际问题的综合能力[5]。
Java整个教学内容可用6个项目进行。项目一,不同图形绘制,主要加深基本语法、方法等知识的理解和掌握;项目二,网上书店开发,应用对象数组、接口等知识;项目三,文件创建和删除,应用Java输入输出知识;项目四,俄罗斯方块游戏开发,应用GUI、类库等知识;项目五,多功能聊天室开发,应用Socket、Server-Socket和多线程等;项目六,网上飞机订票系统,综合应用Java知识。每个项目都采取老师介绍,学生团队协作,辅导,小组答辩,总结的模式进行,使学生逐步掌握项目开发的技能和技巧。
2.5 丰富教学手段,灵活多变
在教学过程中,应综合应用多种教学手段,展示与演示相结合,黑板与投影相结合。对于不同的内容,应采用不同的教学方法。比如,为在开学初激发学生学习Java的兴趣,详细演示一个用Java开发的软件,使学生明确知道Java的强大功能;对于Java应用中操作性强的下推和上拉,重构等知识,可以通过使用开发环境Myeclipse操作演示,强调关键点,再辅以一些恰当的实例,就能使学生轻松掌握。而对于介绍System.out.println与System.out.print的区别,就无需费尽口舌,只需编写一个简单的程序,让学生从直观的程序运行结果中体会就行了。而对于类的组合、聚合?、关联、类的继承、类的多态性等难懂难理解的内容,则可以给学生使用生活中实例辅以UML图形来介绍,学生更容易理解。借用PPT,引入软件工程的项目开发过程和实施策略介绍。
2.6 考核方式改革
(1)平时学习考核:采用10次小测验的形式代替考勤和作业,每次成绩按10分计算,总成绩再乘以20%计入期末总成绩。
(2)实验考核:Java实验设为10次,每次成绩按10分计算,总成绩再乘以30%计入期末成绩。
(3)学生讨论和协作能力的考核:通过以小组为单位进行项目设计,可以没有具体程序,考查学生对问题的讨论、观点讲解、团队协作能力,培养学生的团队意识,成绩定为总成绩的10%。
(4)期末考试:试卷为100分。由于平常上课已经对教学内容设定了了解、掌握、重点、难点,期末不再重点复习,采用半开卷的方式,只允许学生带一张纸,记录自己认为的重要内容,促使学生在考试前必须对所学知识进行系统的归纳与总结,这样既可克服死记硬背的缺点,又可达到促进学生主动学习的目的,还可避免夹带作弊[6]。这种方式可以真正考核学生的学习能力,成绩定为总成绩40%。
通过这种全方位的考核方式,能够理想的评价学生学习Java的效果。
3.结语
Java程序设计是一门实践性很强的课程,重点培养学生面向对象编程思想、技巧和动手能力。要求教师充分把握教学过程中的各个环节,理论与实践相结合,坚持以学生为主导,实践教学为主的教学原则;从提高自身教学技能出发,在培养学生对Java学习兴趣和主动性方面多下工夫,不断优化Java教学方式方法,从而培养出满足企业和社会需要的专业人才。
参考文献:
[1]刘建伟,时华. Java程序设计教学改革的新思路[J].陕西教育(高教),2012(11):58-59.
[2]菊花.使用综合案例贯穿Java程序设计课程教学的探索[J].内蒙古师范大学学报:教育科学版,2010,23(11):145-146+152.
[3]何受倩.Java程序设计教学改革与研究[J].电脑知识与技术,2011(7): 3372-3373+3389.
[4]刘惠敏. Java程序设计课程教学改革方案[J].现代企业教育,2007(12):34-35.
[5]沈维政,苏中滨,赵洁.项目驱动教学法在Java语言程序设计教学中的应用[J].东北农业大学学报:社会科学版,2010(2):72-73.
[6]鄢沛,郭皎.软件工程专业JAVA程序设计课程考核改革实践[J].内江科技,2010(4):193.
作者简介:
龙艳彬(1975-),男,汉族,四川资阳人,讲师。
张学东(1965-),汉族,辽宁鞍山人,教授。
【关键词】Java 教学质量 项目 任务 考核
【中图分类号】G642 【文献标识码】A 【文章编号】2095-3089(2013)09-0136-02
目前在程序设计应用领域,面向对象的Java语言编程和相关的Java技术应用相当广泛,Java语言成为主流的程序设计开发语言之一。掌握Java技术其就业面广,学生可从事B/S网站设计,论坛开发、网络和手机游戏开发、嵌入式开发、智能手机开发、无线设备程序设计、图形图像处理、网络数据处理等工作。而Java程序设计课程作为Java系列课程的基础课程,学生对其掌握的好坏程度直接影响对后继系列课程的学习,进而影响到将来的就业等问题。因此,各高校老师都对Java的教学进行大量的研究,以期不断提高教学质量[1]。其努力研究的成果都对各自高校的Java的教学起到了重大作用[2-4]。
提高Java教学质量,为培养符合企业要求的Java人才,便成为当前教学中一个亟待解决的问题。结合学校的Java教学情况,对存在的问题进行举例分析,从教学管理、教学内容、教学方法和考核方式等方面提出整套改进措施,在实施中取得了比较理想的效果。
1.Java教学中存在的问题及分析
1.1 课程内容缺乏实用性,学生学习兴趣不浓
Java语言课程是实践性较强的一门课程,但各种参考教材都偏重基础理论知识的讲解,实验内容大都是验证型的,且与实际应用严重脱节,学习起来容易乏味,因此学生在学习中逐渐丧失兴趣。另外,课程开在大四,缺乏后续课程支持,学生学完语言不知道用在哪儿,怎么用,不能解决实际问题。不可忽视的一点就是大四学生通常忙于找工作、考研、谈恋爱、贪玩等很多方面都影响教学。
1.2 学生先入为主,认为Java很难不愿挑战
Java是纯面向对象的语言,需要学生用面向对象的概念进行思考和设计,这对于大多学生来说是一种新的体验和挑战。很多学生反应不知该如何理解“面向对象”,对于“对象”可以做什么以及怎么做而感到困惑,甚至很多学生学完后还不知道什么是面向对象编程,和面向过程编程有什么区别。另外,程序设计不仅要求设计者具有很强的逻辑思维能力,思路清晰,而且要求设计者能不断自我学习,以适应现代编程技术的变化。所有这些都对一些学生造成了学习压力,进而导致害怕编程。
1.3过于重视语法,实践教学不够,忽略了学生动手能力的培养
老师授课时,大都按照备课的顺序,逐层逐次的把教材中的知识都一一罗列,详细讲解,为了学生能听懂,甚至不厌其烦的讲几遍,仅顾及了理论知识的讲授,没有结构良好的Java程序的支持,虽然符合教学大纲的要求,但却忽略了应用知识能力和编程思想的培养。这些都暴露了程序设计教学中注重语法细节、忽略总体思想方法和整体过程实现的问题。另外教师在教学的过程中缺乏实际的项目教学,学生的使用技能和动手能力得不到培养。
1.4考核形式传统
(1)考核形式通常为以理论知识为重点的期末闭卷考试。这种单一的考核形式不利于教学效果的评定,更不利于全面、真实考核学生灵活掌握知识、使用技能的能力。
(2)考试内容片面,内容局限在该门课程所采用的教材,而且,考试前的复习中,老师通常会划定范围和考试重点,学生就会采用考前突击,甚至打小抄而取得较好成绩。这样的考试无法真正检查学生的学习效果和教师的教学效果。
(3)重结果轻过程,在计算课程最终成绩的时候,采用平时10%,实验20%,期末70%来综合计算。最终成绩主要还是期末考试一锤定音,学生在平时的学习过程中,积极思考、积极动手实践、创新的方面在最终成绩上体现很少。
2.Java教学改进
2.1 Java课程设置调整
首先,学期由第七学期调整到第五学期,使学生不受大四的繁杂事情的干扰,能够潜心学习。课程调整为Java程序设计作为Java系列课程的第一门课程,设置系列后继课程有动态网站开发、移动平台开发、开源框架集成项目实战,嵌入式开发,安卓游戏开发等,使学生以兴趣选定方向,激发学习动力,目的是让学生掌握面向对象的程序设计的思想和面向对象程序设计编码的硬功夫。
2.2教学内容的整合、形象分析、抽象归纳讲授困难理论
学生在学习Java程序设计前已学习了C++语言,对程序的基本控制结构有一定的基础,那么在Java程序设计的教学中,前面的基本语法、控制结构以及数组和方法部分的教学时间就可以压缩,采取精讲,突出Java和C++不同的地方即可。对于这部分知识,多以学生为主导,让学生通过讲述来发现自己对基本知识掌握不足的地方,从而抓紧弥补。与学生不断互动,举例形象分析,让学生通过已知迁移到新的东西,通过抽象归纳,总结Java抽象的概念和思维方式,促进学生不断学习查漏补缺,取得了较好的教学效果。下面通过几个例子进行说明:
学习类和对象时,引导学生思考一些现实对象,比如学生自己手中的不同手机,各门课程的教材等,学生很快就能归纳出手机类、教材类,进而更抽象为通讯类、书籍类,让学生逐步建立起面向对象的分层抽象思维习惯。
学习虚拟机时,把某学生类比为字节码文件,在不同平台(爸妈家,爷爷家,外婆家)都能被识别,这说明每一个家(平台)都有个内置特定的东西(相当于虚拟机)在起作用,从而将一个类似虚拟机的抽象概念通俗化,使学生轻松掌握。 学习接口时,利用学生买无线网卡上网的例子,说明网卡插槽,就是一个接口,接口不实现功能,因为接口是个抽象类,而只有买来实现了接口所要求实现的上网功能的网卡,才能进行上网工作。
2.3注重编程思想的训练
学习一种编程语言或开发工具,语法结构、功能调用是次要的,也不困难。困难的是学生没有掌握编程思想,找不到编程感觉,从而感觉学习语言课和其他理论课程没什么区别,就是考试拿学分。所以,学习一门语言,引导学生最主要是学习它的思想。例如学习Java就要学习面向对象的内在机理、什么是线程、接口等;学习COM 就要知道VTALBE 、类厂、接口、idl等,有了思想,那么就可以触类旁通。告诫学生要掌握编程思想必须在编程实际中去实践和体会。编程起步阶段必须自己动手设计程序,具体设计时不要拘泥于固定的思维方式,遇到问题要多想几种解决的方案。要求多交流,各人的思维方式不同、角度各异,各有高招,通过交流可不断吸收别人的长处,丰富编程实践,帮助自己提高水平。
2.4 项目驱动教学
“项目教学法”是通过实施完整的项目来进行的教学活动,其目的就是要在课堂教学中把理论与实践教学有机地结合起来,充分发掘学生的创造潜能,训练学生小组协作和团队精神,让学生在应用中学习,在实践需要时学习,从而提高学生解决实际问题的综合能力[5]。
Java整个教学内容可用6个项目进行。项目一,不同图形绘制,主要加深基本语法、方法等知识的理解和掌握;项目二,网上书店开发,应用对象数组、接口等知识;项目三,文件创建和删除,应用Java输入输出知识;项目四,俄罗斯方块游戏开发,应用GUI、类库等知识;项目五,多功能聊天室开发,应用Socket、Server-Socket和多线程等;项目六,网上飞机订票系统,综合应用Java知识。每个项目都采取老师介绍,学生团队协作,辅导,小组答辩,总结的模式进行,使学生逐步掌握项目开发的技能和技巧。
2.5 丰富教学手段,灵活多变
在教学过程中,应综合应用多种教学手段,展示与演示相结合,黑板与投影相结合。对于不同的内容,应采用不同的教学方法。比如,为在开学初激发学生学习Java的兴趣,详细演示一个用Java开发的软件,使学生明确知道Java的强大功能;对于Java应用中操作性强的下推和上拉,重构等知识,可以通过使用开发环境Myeclipse操作演示,强调关键点,再辅以一些恰当的实例,就能使学生轻松掌握。而对于介绍System.out.println与System.out.print的区别,就无需费尽口舌,只需编写一个简单的程序,让学生从直观的程序运行结果中体会就行了。而对于类的组合、聚合?、关联、类的继承、类的多态性等难懂难理解的内容,则可以给学生使用生活中实例辅以UML图形来介绍,学生更容易理解。借用PPT,引入软件工程的项目开发过程和实施策略介绍。
2.6 考核方式改革
(1)平时学习考核:采用10次小测验的形式代替考勤和作业,每次成绩按10分计算,总成绩再乘以20%计入期末总成绩。
(2)实验考核:Java实验设为10次,每次成绩按10分计算,总成绩再乘以30%计入期末成绩。
(3)学生讨论和协作能力的考核:通过以小组为单位进行项目设计,可以没有具体程序,考查学生对问题的讨论、观点讲解、团队协作能力,培养学生的团队意识,成绩定为总成绩的10%。
(4)期末考试:试卷为100分。由于平常上课已经对教学内容设定了了解、掌握、重点、难点,期末不再重点复习,采用半开卷的方式,只允许学生带一张纸,记录自己认为的重要内容,促使学生在考试前必须对所学知识进行系统的归纳与总结,这样既可克服死记硬背的缺点,又可达到促进学生主动学习的目的,还可避免夹带作弊[6]。这种方式可以真正考核学生的学习能力,成绩定为总成绩40%。
通过这种全方位的考核方式,能够理想的评价学生学习Java的效果。
3.结语
Java程序设计是一门实践性很强的课程,重点培养学生面向对象编程思想、技巧和动手能力。要求教师充分把握教学过程中的各个环节,理论与实践相结合,坚持以学生为主导,实践教学为主的教学原则;从提高自身教学技能出发,在培养学生对Java学习兴趣和主动性方面多下工夫,不断优化Java教学方式方法,从而培养出满足企业和社会需要的专业人才。
参考文献:
[1]刘建伟,时华. Java程序设计教学改革的新思路[J].陕西教育(高教),2012(11):58-59.
[2]菊花.使用综合案例贯穿Java程序设计课程教学的探索[J].内蒙古师范大学学报:教育科学版,2010,23(11):145-146+152.
[3]何受倩.Java程序设计教学改革与研究[J].电脑知识与技术,2011(7): 3372-3373+3389.
[4]刘惠敏. Java程序设计课程教学改革方案[J].现代企业教育,2007(12):34-35.
[5]沈维政,苏中滨,赵洁.项目驱动教学法在Java语言程序设计教学中的应用[J].东北农业大学学报:社会科学版,2010(2):72-73.
[6]鄢沛,郭皎.软件工程专业JAVA程序设计课程考核改革实践[J].内江科技,2010(4):193.
作者简介:
龙艳彬(1975-),男,汉族,四川资阳人,讲师。
张学东(1965-),汉族,辽宁鞍山人,教授。