项目驱动教学法在Java课程设计中的应用
摘要:Java课程设计是Java课程教学中的重要环节,文章针对目前Java语言课程设计现状,提出了项目驱动式的教学方法。该方法以教师为主导、学生为主体,使学生在具体的项目实践中完成对学科知识的掌握与运用。该教学法的应用有效地激发了学生的主动性和积极性, 不仅使学生更好地掌握专业知识和技能, 对知识点融会贯通,同时也增强学生的综合素质和能力,以适应当今的社会需求。
关键词: Java;课程设计;项目驱动;教学方法
中图分类号:TP31文献标识码:A 文章编号:1006-4311(2012)18-0216-02
0 引言
程序设计类课程是高校计算机专业学生必学的课程之一,是专业知识的基础与重点,也是一类理论与实践开展同步教学的课程。Java程序设计作为一门强调实践的课程,在其教学模式上应注意理论和实践的双重把握。与之相关的课程设计是这门课的一个重要实践性教学环节,是课堂理论教学的延伸与扩展。通过课程设计培养学生面向对象建模及编程的能力,加深面向对象程序设计的思想,激发学生学习的积极性和主动性,培养学生的创新能力、综合分析问题和解决问题的能力。在实际教学过程中尤其要注重学生实际应用能力的培养,以适应当今的社会需求,而实践动手能力正是通过该门课程的课程设计教学环节锻炼和体现的,也是最接近企业需求的重要内容之一,通过课程设计使学生在创新性、自主性、探索性和协作性等方面得到综合培养,以适应新形势下人才培养所应具备的基本要求。
1 Java语言课程设计教学现状
目前我们的课程设计教学环节存在严重不足,课程设计成为理论教学的附属,教学模式单一、教学内容多是单一的理论型、基础型、验证型题目,只是要求学生照搬照抄已有的知识简单地进行理论知识的验证,题目相对陈旧,而应用型、综合设计型的题目比较匮乏,且与工程实践相脱离,缺乏开展创新性和创造性活动的平台,这样以来使学生的学习主动性和积极性受到了严重制约,学生的思维能力、分析能力、实践能力及创新能力无法得到充分的发挥与发展,经过课程设计以后学生所掌握的的仍然是理论课上所讲授的一些基本语法和理论知识,而对整个项目的开发过程却依然很陌生,工程性的知识十分欠缺,不具备开发项目的必需素质与能力,也就无法很好地适应以后工作的需要。
本文所研究的主题是在Java的课程设计中采用项目驱动的教学形式来改善其教学效果,目的旨在培养出具有较强动手能力的,适应社会需求的学生。通过项目的开发来带动学生在深入学习语言基础结构的同时,培养学生的项目开发能力,同时在项目开发的过程中给学生制造更多发现问题并解决问题的机会,对学生的自主学习起到了很好的促进作用。另外,以团队的形式进行项目开发,还可以加强学生之间的团队协作精神。
2 项目教学法及其特点
项目教学法是由美国教育家凯兹博士和加拿大教育家查德博士共同创建的一种以学生为主的活动教学法[1],它以项目驱动教学,学生在项目教学中以探索性学习为基础。项目教学法的理论依据是建构主义的学习理论。建构主义认为学生学习的动力来自待解决的问题,教学关注的重点在于使学习者达到一定的程度,教师的职责在于使学习者置身于探索知识之中,为他们提供适当的“情境”,然后使学生在此情境之下,通过教师的指导、同学的讨论来解决问题,即协助和会话,在完成任务的同时,达到最终的教学目的即实现意义建构[2]。将项目驱动教学法系统地应用于Java的课程设计教学过程中,对培养学生的创新能力、协作能力以及应用实践能力起到了积极地推动作用。
项目教学法具有以下特点:
2.1 系统性:项目教学法注重从整体上把握系统的构建和设计,不仅要掌握Java语言特定的语法及使用规则,而且还要融合软件工程的思想,使学生具有独立完成项目的设计与开发的能力。
2.2 协作性:因为是以团队的形式由若干个学生协作完成一个项目,所以有利于加强学生之间的沟通与交流。虽然学生之间的能力有差异,但是通过彼此之间的交流、沟通、甚至争议,使他们可以交流心得和体会,共享学习资源,互相帮助,对所学知识能够加深印象,共同提高。小组成员也可以适时分工,相互协作并及时交流信息,既可以节约时间,也能够及时获得学习资料,提高学习效率[3]。
2.3 模拟性:项目方式的教学实际上就是对未来企业中项目开发的模拟,在课程设计教学中运用项目驱动方式,能让学生尽早的接触并感受到真实工程的开发过程,这对于掌握计算机语言知识以及提高自身的独立项目开发能力具有深远的影响。
2.4 多角度:由于渗透了软件工程的思维,因而项目教学法在实施的过程中对学生进行了多角度的培训,从项目可行性与需求分析到维护等各方面,加深了学生在计算机程序设计中的软件工程意识。
2.5 周期长:项目方式的课程设计在系统的设计这一环节可能会占用较多课时,因而其开发周期比较长。这样使得教学过程更全面,也增强了学生的工程性编程理念,这恰恰是课程设计最终所要达到的目标。
3 项目驱动教学法在课程设计教学中的实施
Java语言课程设计是将所学知识用于实践的过程,在课程设计中应用项目驱动教学法,使学生始终处于主体地位,能够充分发挥学生的智慧与创造力,提高学生解决实际问题的能力和创新意识。
3.1 实施的原则 项目是项目驱动教学模式得以实施的基础[4]。在教学开始前要选择好合适的项目。总体上应当注重遵循以下几个原则。
3.1.1 项目选择适当原则 项目选择的难易程度关系到该教学法实施的成败。合适的项目应该具备一定的综合性,不仅能使学生把已掌握的知识和将要学习的知识有机的融合,还包含了课程主要知识点。同时该项目还应利于和其他相关学科的知识相结合,以提高学生以一贯十的综合应用能力。此外,项目的难易程度适中,模块化程度要高。这样的项目有利于他们团队分工明确。选择项目时还应注意其趣味性和现实性,这样的项目对学生具有较强的吸引力,激发他们的学习热情,对系统开发能认真自觉对待,利于项目更快更好的完成。
3.1.2 注重多层次教学原则 教学中应注意学生的个体差异,结合学生的实际情况,从个人与整体两个方面考虑,因材施教,进行多层次项目设计,针对不同学生提出适当的目标要求。如第一个层次遵循的是教学大纲的基本内容,那么第二个层次可以在大纲的基础上有所扩充,第三个层次则要求学生具有较高的项目开发的综合能力。这样有利于学生整体水平的提高。
3.1.3 适时归纳原则 项目驱动教学法的学习主体是学生,而学生的学习能力是有差异的,对知识的掌握程度有所不同,容易造成学生两极分化和知识点掌握的不全面。教师应该在教学过程适当适时的加以总结和交流,对于学习有疏漏的学生或者学习能力差的学生来说,通过教师的总结弥补其疏漏的知识,跟上教学进度,达到教学目标,促进同步发展。另外,教师要及时对学生的学习效果进行评价,对学生的学习效果提供针对性的反馈信息,这样可以使学生清楚自身对知识的掌握情况,采用更合适的学习方法,同时教师也可以根据实际的教学效果为下一步的教学做出合理安排。
3.2 实施过程
3.2.1 设置开发团队 团队组织是否得力是项目驱动教学法实施成败的关键[5]。每个团队由5到6人组成,可以根据每个学生的特长分别担当项目组长、系统分析员、程序员、测试员、文档编写员等角色,由团队共同完成某个项目。创建协作学习环境。这与企业中真实的项目开发情景相仿,教师作为组织者要对学生分组的总体原则给予控制,使各组的技术力量相对协调。尽量为每个团队营造和谐的协作氛围,使学生群体的智慧为每个学生所共享,最终实现项目的开发。
3.2.2 完成项目 项目驱动的核心思想就是让学生在实践中学习,其教学方式是以学生为主体、教师为主导的学习过程,教师在整个教学过程起到引导和监督作用。首先学生思考如何去完成项目,在完成项目的过程中提出自己无法解决的问题,由教师协助分析,在教师的指导下得到解决问题的方法。这样不仅培养了学生独立分析问题及解决问题的能力,还调动了学生的求知欲。当然,教师不过分干预各团队项目开发的正常进度,保证团队的自主性和主动性。但要注意随时跟踪学生情况和项目的进展状况,一旦发现问题要及时给予协助指导,保证项目顺利进行。
3.2.3 项目总结 把项目开发划分为几个阶段,在每个阶段要求学生进行阶段性总结,不同团队之间可以相互交流开发经验,同时提出开发过程中及所遇到的困难。这种阶段总结可以明确各团队进度,促进团队之间的交流,锻炼学生的表达和交流能力。教师对出现的共性问题可以集中进行讲授。同时,教师还要启发学生对项目进行拓展,使之在今后遇到类似问题时能顺利解决,最后教师对项目的完成情况进行综合评价。
4 结论
通过项目驱动教学法在Java语言课程设计中的实施,使学生通过具体的项目开发自然而然地对语言语法结构融会贯通,掌握项目完整的开发过程,在项目的实践中缩短与企业之间的距离。同时我们还应注重其他教学方法的运用,只有合理的将各种不同的教学方法综合运用,才能在Java乃至其他语言的学习过程中,把项目教学驱动法切实的运用到其课程设计的教学中。
参考文献:
[1]肖胜阳.在计算机课程教学中开展项目教学法的研究[J].电化教育研究,2003,(10).
[2]张哲,陈桂生.在 Java 语言教学中实施“项目驱动”教学法的实践探索[J].教育与职业,2007,(18).
[3]侯书芹,刘学莉.计算机实验教学的素质教育作用[J].安阳师范学院学报,2003,(5).
[4]汤宗健.自主项目驱动教学模式的研究与实践[J].实验技术与管理,2010,(7):5.
[5]岑宇森,熊芳敏. “软件工程”课程项目教学法研究[J].计算机教育, 2009,(11).