摘 要:java课程是一门与应用技术紧密结合的实践性课程。在java课程的教学中采用项目化任务驱动,将教学中设计的每个任务和项目案例相结合,不但能充分调动学生的学习积极性,更能提高学生应用知识的能力,提升学生就业的核心竞争能力,从而达到教学效果的最优化。
关键词:java;项目化;任务驱动;教学模式;团队合作
Java是一种比较新的计算机语言,由于它在网络、平台无关性和安全性方面的优点比其他计算机语言更为突出,现被作为软件行业的第一软件开发平台,这不仅引起了业界的广泛关注,也促使各大高校针对计算机专业学生开设Java方向课程,如Java程序设计、可视化程序设计、J2EE框架与技术、java web开发等。为了让学生能适应计算机技术的发展和社会需要,我校从2004年开始对计算机专业的学生开设了Java 程序设计课程。Java程序设计课是该体系课程的基础课,因课程的需要,并结合高等院校特点,提出了JAVA课程体系教学研究方法,并根据此方法提出了合理的教学方案,对当前各高校在此课程中所采用的教学方法和经验,再总结本教学团队以往在此课程教学中的经验,对教学中存在的问题进行分析,提出项目化的任务驱动教学模式。
一、单纯的任务驱动式教学的弊端
近几年来,许多高校在java课程的教学上多采用单纯的任务驱动式教学模式, 这虽然在一定程度上调动了学生的学习积极性,但从教学效果上来看,采用这种教学模式仍存在有很多问题,比如:
1、虽然教学中都有设计任务,但任务简单,一个任务只是针对一个知识点所设计的,没有连贯性和整体性,导致学生能利用基础语法知识写出功能简单的代码,但在面向对象的程序设计部分所反映出来的是理论能明白,实际编程却不知从哪里下手,明显的表现出理论和实践脱节。
2、教学过程中没有项目规划等方面的设计概念,在项目设计中更是无从下手,个别学生可以编写少量代码,但无法从整体上把握。
3、在教学过程中教师与学生之间的互动几乎没有,学生在学习中真正参与其中的较少,学习兴趣不浓,从而投入的学习时间不多,最后导致编程能力不强。
从这些情况可以看出,简单的教学任务虽然能使学生很好的掌握每一个教学模块的知识,但因为目前的教学中所给定的任务之间的联系较少,以至于学生在对课程体系的整体掌握上和项目开发的整体性上仍无法将各个点融会贯通,造成各个知识点之间的衔接上缺乏连贯性,这与现实中问题的实际要求相差甚远,学生当遇到问题时,总是茫然不知所措。而社会培养急需的是具有一定创新精神和实践能力的“应用型”人才。只能应用一些基本的语法知识,而不具有项目开发能力的学生是没有竞争能力的。
针对这些实际存在的问题,我们教学团队结合课程实际和以往代课的经验,提出了一套比较适合java课程的教学模式——项目化的任务驱动教学模式。
二、项目化的任务驱动教学模式
项目化的任务驱动教学模式,是项目驱动和任务驱动相结合的教学模式,是先设定一个合适的项目,然后根据课程的内容将项目分为多个小的任务模块,以每个任务模块为案例完成对应的教学内容。
此教学模式的优点:
1、项目虽然比一般性的任务有一定有难度,但学生能在运用已有知识、技能的同时,用学习到新的知识技能来解决过去从未遇到过的实际问题,以此来培养学生自学的习惯。
2、将自选项目分解成一个个与案例相近的任务模块,在教师的引导下,学生完成相关任务模块,并最终将一个个任务模块“组装”成一个完整的项目。这样,能让学生在完成任务的同时对项目设计、规划等都有一个基本的思路。
3、这种方式使学习过程成为每个学生都参与的创造性实践活动,在实践过程中理解和把握知识技能。要比单纯的任务驱动教学更能调动学生的学习积极性。
4、教学中所采用的项目是学生所熟悉的领域,教学任务是按项目开发的步骤所给定,并且教师给与指导。在学习的过程中能逐步熟悉项目开发的过程,能很好地做到理论和实际相结合。
三、项目化任务驱动教学法的运用
第一步:选定项目。在开始本课程之前,教师要结合教学内容实际选择一个与专业相关、学生比较熟悉的、且功能相对完整的小型项目(如学生信息管理系统,学生选课系统,图书管理系统等),并要收集与其相关的项目资料,再给学生制定一个明确的任务目标,要以书面形式给出。基本上所有实际工作中的问题都可以开发成为项目,项目目标或任务的特点是与实践相关的。
其中,教师的任务:
1、研究与职业有关的、需要运用理论和实践解决问题的项目。选择出多个可以使用到教学中来的好的项目。并根据实际教学内容和教学实践的安排,将每个项目都进行分解并设计出一个个相对独立、见到的案例模块,并进行剖析。项目分解要注意与教学内容相结合,分解的案例模块在功能上要保持一定的完整性,且各模块之间具有一定的渐进性、扩展性,这样可逐步引发学生的学习兴趣,避免产生畏难和抵触情绪。
2、将项目设计好,并将项目模块化以任务的形式合理地安排到教学计划。对于选用的实施于教学的项目,教师一定要先进行分析、实现。
第二步:计划。给学生制定项目的一个工作计划,要求学生在一个学习阶段能把小的任务整合为项目的一个相对大的功能模块,并要求学生同步解决一些问题,而这些问题是需要学生通过查找资料来完成。
工作计划的内容:
(1)任务内容的安排
(2)任务进度的安排
(3)对小组成员的职责进行划分
第三步:实施。在实施过程中,需要进行课程学习和小组讨论,帮助学生完成代码的设计及相关资料的整理。
第四步:评估。
1、结果演示
结果由小组代表演示作品的所有功能,并论述介绍自己在其中所运用的特色的技术。
2、提问。教师和学生都可以进行提问。
3、评价。对学生设计的项目做一个合理的评价。
这个环节的目的在于促进学生对结果、工作方式和经验自我评价的能力。按照小组预先确定的评定标准,学生和实训教师共同对项目结果、学习过程、优点和不足进行讨论评估。
四、在教学过程中进行教学考核
1、因为采用的是任务驱动式的教学,每个学生都要能够完成每一个任务目标。所以主要考核学生的每个任务模块的完成情况,学生是不是按要求完成,是不是有代码的优化、改进,是不是真正理解并掌握每个知识点。
2、教师课堂教授的知识比较有限,因为教学中所给定的任务目标中一些任务的实现不在教学
内容里面,是对学生知识面的一个扩展,目的在于培养学生查资料和应用知识的能力,是一个更高的要求。这需要看学生查资料,额外问题的解决情况。
3、虽然是任务式驱动教学,但仍然对学生进行分组。在任务实现的过程中,需要大家学习项目开发的各个步骤,并且对教学中没有讲到但在项目中需要的部分,小组可以进行分析讨论。小组任务整合后的演示情况和相关材料的完整情况。这部分除了看最终项目完成的情况外,还要看每个学生的任务完成的情况。
4、最后综合以上三项给出每个学生一个合理的成绩。
五、结束语
Java课程是一门实践性极强的课程, 教师只有遵循学生的认知规律,在教学中合理、有效地应用项目化任务驱动教学方法,才能充分调动学生的学习积极性,提高学生应用知识的能力,提升学生就业的核心竞争能力,从而达到教学效果的最优化。
参考文献:
[1]张海藩,软件工程导论,清华大学出版社.
[2]齐治昌、宁洪,软件工程第二版,高等教育出版社.
[3][美]Roger S.Pressman,软件工程:实践者的研究方法(原书第5版),机械工业出版社.
[4]胥光辉,软件工程方法与实践,机械工业出版社.
[5]陈涛. 基于案例教学的Java 语言课程改革研究[J]. 教育研究与实验,2009( 3) : 59 - 62.
[6]管恩京. 促进高校网络教学与教学资源应用的对策研究[J]. 现代教育技术,2009( 12) : 126 - 129.
[7]殷明,朱昌平.从众心理与学生实践创新能力培养的研究[J]. 实验技术与管理,2009,26(7):128-130.
[8]陈荦,熊伟,吴秋云.工科信息类专业课程中实施合作学习模式的探讨[J]. 教学改革,2010(1):29-30.