1、项目驱动式实践教学方法探究摘要:为满足市场对人才的工程性要求,探索真实项目驱动的实践教学过程和实践教学方法的可实施性,在客观条件允许的情况下,尝试建立项目仿真实践环境,并实行规范的项目管理和有效的激励机制。通过应用项目教学法培养学生实战工程项目的各种能力,包括团队协作、适合工作角色的工作能力等。同时也要求教师实践教学思想不断进行创新、发展。 关键词:项目驱动 实践教学 创新 1 引言 随着经济和社会的发展,许多国家都在探索与其经济发展相适应的教育发展模式,不断提高教学质量和办学效益。计算机课程是以实践为基础,注重培养学生的创造能力、动手能力。传统的教学模式重理论、轻实践,理论与实践严重脱节,培
2、养出来的学生不能满足社会对计算机人才的需求,而项目教学法能够很好地解决这个矛盾。所谓项目教学法是一些国家近年来为培养学生综合素质和职业能力所采取的一项有力措施。项目教学法是一种以建构主义为理论依据的教学和学习模式,是一个让学生参与学习,提出问题,广泛调查,然后建立新的认识和知识的过程。本文通过在计算机课程教学中选取合适的项目来探索如何将传统的教学方法与现代化教学方法有机地结合,从而创造良好的学习氛围,激发学生学习的积极性,能够使学生对教学内容有总体掌握和运用,更适合于学生将来工作的需要。目前国内高校教师在不同课程的实践教学中使用项目教学法的较多,大多也都取得了良好的效果。但我校的计算机课程目前
3、仍采用传统的教学方法,学生学习主动性差,动手能力弱,因此引入项目教学法,从数据结构、语法、算法、优化、规范化编写代码等不同方面和角度培养学生实践能力,并通过具体项目实战提高学生的分析问题和解决问题能力将对我校计算机课程的教学改革起到促进和示范作用。 2 项目驱动式实践教学研究 本文通过在计算机编程课程中进行项目驱动式实践教学方法试点,通过与计算机编程课程教学的一线教师探讨,发现学生虽然学习了计算机语言课程,但利用所学的语言不会解决实际问题,例如,学习了 C 语言后,学生不会用 C 语言解决定积分、一元高次方程求根等,更谈不上去求解工程实践问题了。另外,在一门计算机编程课程的教学过程中,要讲解很
4、多知识点,现在的教材每个知识点都配备了不同的例题,而且有的例题还比较大,这样学生不但要理解知识点还要弄懂例题本身,这就给学生带来很大压力,学生就没有更多时间去研究利用自己所学的知识解决实际问题了。笔者通过与多名计算机编程课程的一线教师探讨,结合我校学生的实际情况,研究了一套项目驱动式实践教学方法,并利用该方法来激发学生学习编程课程的兴趣。具体如下: (1)通过综合计算机编程语言学习法和多元化编程语言对比学习法,学生能够充分体会到多种语言在表达同一个算法思想、解决问题方法、异同点以及在不同环境下的多种应用(如:多种语言的混合编程等) ,进而找到最有效解决问题的方法。 (2)分层次学习计算机编程语
5、言,通过分初、中、高以及实战型等不同层次培养学生的编程能力,同时也能减少学生在学习同一个知识点上浪费时间和精力。将计算机编程语言内容共享教学,通过彻底研究一个最典型的例题或小项目在不同编程语言中的应用,从数据结构、语法、算法、优化、规范化编写代码等不同方面和角度培养学生编程能力和编程思想。从而达到触类旁通和不同角度分析、认识、转换、解决问题的能力。项目实战教学培养大学生自主创新创造的独立能力,从实战中学习体会编程思想和团队合作能力,充分发挥个人在团队中的能动性和创造性。 (3)在实践教学过程中围绕教学目标提出项目教学,围绕项目展开教学。以任务为驱动,师生双方边教、边学、边做来完成某个教学目标和
6、教学任务,融理论教学、实践教学、生产、技术服务于一体。充分发挥师生双方的主动性和互动性。应用项目教学法培养学生实战工程项目的各种能力,包括团队协作、适合工作角色的工作能力等。同时也要求教师教学思想不断进行创新、发展。 (4)通过彻底研究一个最典型的例题,避免师生为熟悉不同例题而浪费时间精力,通过一个典型例题分析各种教学内容,最有效最直接培养学生学习能力,而其他的例题可以作为练习进行能力提高。有利于学生从不同方面和角度学习体会计算机编程语言,从而更快更准更有效定位学习兴趣和计算机编程语言选择,化被动学习为主动学习,从而达到高效率地学习。 (5)开展多种教学方式,如互联网教学、手机 Wap 网络教
7、学、以及多种自由化教学模式,尽可能发挥师生最大能动性,使得师生同时进步。使程序设计的学习过程成为学生的兴趣,而不再单纯地作为学习一门课程。 (6)创建计算机编程语言课程自主学习网站,将修订后的计算机语言编程课程的教学计划和教学大纲、计算机编程语言内容共享后的教学课件以及采用项目教学法,并和其他编程语言内容共享的讲义上传到网站上,学生们可以及时下载学习,同学们也可以把自己做的计算机作品上传供其他同学学习,对大家也是一种促进作用。同时开通计算机编程语言交流论坛,这样学生们可以在论坛中自由交流,解决了教师课后难以久留的矛盾,避免了有些学生不敢当面问老师问题的尴尬。 (7)多带领学生参加相关的比赛,一
8、方面可以让我们的学生见识其他高校计算机学生的素质和能力,找到我们的不足,使我们的学生有一个能向其他高校学生学习的机会,另一方面,通过比赛,能督促学生自己去专研,能把所学知识充分利用起来,让学生感觉到自己所学知识是有用的,提高学生进一步学习的信心,通过比赛,学生在分析问题、解决问题和创新能力上都得到了一个提高。 (8)研究构建计算机编程语言实践教学新体系,完善教学环节,通过对一些高等院校计算机编程语言教学体系调查研究,其计算机编程语言教学体系不合理,表现在老师授课、学生听讲的传统模式,不利于学生的动手能力和创新能力的培养。要改变这种局面,必须建立计算机编程语言新体系,该体系通过彻底研究一个最典型
9、的例题在不同编程语言中的应用,从数据结构、语法、算法、优化、规范化编写代码等不同方面和角度培养学生编程能力和编程思想。避免重复地讲同一个知识点而浪费时间和精力;在教学过程中围绕教学目标提出项目教学,围绕项目展开教学。以任务为驱动,师生双方边教、边学、边做来完成某个教学目标和教学任务,融理论教学、实践教学、生产、技术服务于一体。充分发挥师生双方的主动性和互动性。 (9)研究计算机编程语言教学策略、整合教学内容,计算机编程语言教学策略要注意:1)计算机编程语言教学与专业相结合、引趣导学;分层次教学;2)教学设疑,启迪思维:3)注重操作,培养能力;教师要尽可能创造条件为学生提供较多素材,在计算机编程
10、语言教学中与所学知识紧密结合。在完成计算机编程语言教学过程中,学生更需要思考、判断、表达,最后修正自己的学习态度和方法,增强自学的能力。4)方法探究,开拓创新。教学中要根据所学的重点内容,提出富有创新性的问题,培养学生的探究能力和创新能力。5)在 C 语言、面向对象程序设计和 JAVA 语言课程中进行教学内容整合,在这几门课程中进行编程语言内容共享教学,将计算机编程语言课程类似内容提炼出来,作为公共模块来讲授,比较并分析各种编程语言的联系与区别以及各自适合的场合和优势,并采用项目教学法和案例教学法进行教学,利用一个典型的小项目在编程语言课程中贯穿讲解,避免了学生为熟悉不同例题而浪费时间精力。
11、(10)研究构建计算机编程语言教学模式,更新教学手段和方法,创新能力的培养要以实践为基础,实践是创新的源泉。计算机编程语言具有很强的实践性和应用性,所用知识种类较多,方法多样。多带领学生参加相关的比赛,一方面可以让我们的学生见识其他高校计算机学生的素质和能力,找到我们的不足,使我们的学生有一个能向其他高校学生学习的机会,另一方面,通过比赛,能督促学生自己去专研,能把所学知识充分利用起来,让学生感觉到自己所学知识是有用的,提高学生的学习信心,通过比赛,学生在分析问题、解决问题和创新能力上都得到了一个提高。在课余时间带领学生进行小项目的制作,例如带领我校计算机科学与技术专业学生申报“三小” (小发
12、明、小制作、小创作)项目,并在课余时间指导学生完成项目,让学生体会所学知识如何应用到项目中,激发学生学习计算机编程的兴趣,提高学生计算机编程能力,从而解决学生学了编程语言不会利用编程语言解决实际问题的尴尬。 3 小结 本文的研究对更新大专院校计算机编程实践教学观念,提高对计算机编程语言课实践教学的认识,优化教学结构,改革教学模式,提高教学质量和效率,及提高学生的动手及创新能力,从而提高学生就业竞争力,促进计算机编程实践教学管理观念更新,促进教师知识更新都有深远的意义。但我们必须清楚认识计算机编程实践教学的建设是一项系统工程:提高计算机编程实践教学质量的关键是不断加强自身建设;深化教学改革的核心是培养学生实践和创新能力;推进教学改革的基础是建立计算机编程实践教学大环境;实施计算机编程课实践教学的载体是课程教学体系和内容;加速教学改革的催化剂是教学手段和方法的改革;项目驱动式实践教学方法探究还任重道远。 参考文献: 1张忠福.建立以能力培养为中心的实践教学体系J.实验技术与管理,2011(02). 2金永涛,邹澎涛,魏艳娜,刘洁.基于项目的网络工程专业教学模式探究J.中国大学教学,2010(12). 课题资助:南昌航空大学校教改课题,课题编号:JY1322。