关于建立程序设计课程教学新体系的研究

时间:2022-10-02 10:13:21

关于建立程序设计课程教学新体系的研究

摘要:通过长期一线教学及具体深入调查,指出了高校程序设计课程教学中存在的问题。结合实际教学经验及课程改革实践,提出了程序设计课程教学应由语法体系向问题体系转型的观点,并从教学目的、教学模式、教学内容、教材建设及评估规范等方面对其进行了补充阐述。两年的改革实践证明了问题体系的程序设计课程教学能更好地促使学生自主学习,帮助学生发现问题、分析问题,并培养学生独立解决复杂问题的能力。

关键词:教学新体系;语法体系;问题体系;能力培养

中图分类号:G642 文献标识码:A 文章编号:1007-9599 (2012) 11-0000-02

一、概述

程序设计类课程,如《C语言程序设计》、《C++程序设计》及《JAVA程序设计》等,在国内各大高校虽已开设多年,但仍存在诸多问题。如学生学习目的不明确、学习重心偏移、知识与实践脱节、应试教育限制了对能力的培养等,从而导致教学效果与培养目标相差甚远。

以上弊端存在已久,若只采用“头痛医头脚痛医脚”的局部修补方式,无法从根本上解决实际问题。要改变现状,应从课程体系的高度着手,使程序设计课程教学从语法体系走向问题体系[1]。下面具体分析了传统课程体系的缺陷,并具体探讨了如何建立程序设计课程新体系。

二、传统的程序设计课程体系:语法体系。

传统的程序设计课程教学多以语法体系为主,学生以掌握某门语言的语法知识为目标,与能力培养严重脱节。这样的课程体系势必引发诸多问题。

(一)学习重心本末倒置。传统教学中,师生致力于语法知识的教习,甚至一些考试和考证也是以考查语法知识为重点,从而导致很多学生语法掌握扎实,但遇到实际问题时却不知如何下手。调查显示:学完“C语言程序设计”后能熟练掌握、灵活运用的学生还不到总人数的10%,大部分学生只能是应付考试,甚至有约5%的学生采取放弃的态度[2]。

(二)“语法体系”制约了教学模式的改革。虽然国内外不乏关于教学模式的探讨及改革案例的介绍,但当前高校的程序设计课程仍主要采取传统的“以教师为主导”的教学模式。这是“语法体系”从根本上所制约了的。课程由独立的语法知识点组成,其中的实例之间连贯性较弱,各章节孤立[3]。这样的课程体系下,教师也很难引导学生对具体问题进行可持续性地、深入地思考;很难使学生真正成为学习的主体,自觉、主动地探究问题。

(三)片面地讲授程序设计知识,与系统化的软件工程思想脱节。传统的程序设计课程以编码知识为主,不涉及或很少涉及程序分析、设计以及测试等方面能力的培养。而相关课程——《软件工程》,一般于大四开设。此时学生即将毕业,诸多程序设计的不良习惯已经养成;编码实现之前缺乏分析、设计,实现之后不能全面而系统地测试等现状也难以纠正。

(四)不合适的教材影响着教学效果。随着出版业的发展及程序设计课程的逐步成熟,现今的程序设计教材可谓琳琅满目,然而一眼望去,仍是以语法体系为主流。教材是教师重要的教学工具,不合适的教材无法帮助师生梳理教习思路;无法引导师生对问题进行连贯性地思考和更深层次地探究;不能使学生树立正确的程序设计课程学习目标;不能为学生建立适当的程序设计课程学习方法等。

(五)缺乏科学的作业评估规范。目前很多教师对程序设计课程的理解还比较片面,不能从整体的角度来认识。多数教师只注重学生是否通过正确的编码得到正确答案。这不仅打击了学生对问题进行开放性思考的积极性,而且导致学生误以为程序设计的唯一标准便是程序的正确性而忽视其他方面。

三、程序设计课程新体系:问题体系

美国亚利桑那大学琼·梅克教授经过15年实验,早在1998年便创立了“问题体系”。该体系以“培养学生能力”为目的,以“问题”为中心,以“方法”为中介,以“答案”为结果,根据教师和学生双方对问题、方法、答案已知和未知的情况构建了由易到难的五个层次的练习[4]。具体见下表1:

梅克教授的“问题体系”理论展现了五种不同层次的训练形式。该理论应用在教学中,得到的启示便是:教学,尤其是实践性强的课程的教学,应从基础性练习入手,逐步提高练习层次,最终培养学生独立发现问题、分析问题、解决问题的能力。这是传统的语法体系难以达到的。因此,程序设计课程改革势必将其课程体系向问题体系转移。下面具体从教学目的、教学模式等方面对本次教改实践进行详细阐述。

(一)教学目的从语法学习转向能力培养。以多元智能为代表的新型智能理论认为,能够成功地解决复杂问题的人,才是具有高能力的人[5]。单纯的语法教习无法很好的培养这类人才。因此,教师应首先确立正确的程序设计课程教学目的,即程序设计课程应培养学生利用计算机解决实际问题的能力,而不是语法记忆的能力。从而帮助学生明确学习目的、摆正学习重心、调整学习方式。

(二)教学模式由“以教师为主导”向“以学生为主体”转移。传统的语法体系教学极大地限制了学生作为学习主体主动探究问题的可能性,而问题体系则能较好的引导学生独立思考、自主学习。德国教育学家第斯多惠也曾说:“教学的艺术不在于传授本领,而在于激励、呼唤。”[6]在本次教改实践中,采取了“启发探究”、“问题递进”、“探索验证”等具体的教学方式来激发学生潜能、引导学生主动自主学习。举证如下:

启发探究:在介绍C语言的“switch”结构时,可编写简单的四则运算程序,核心代码如下所示:

switch (operate )

{

case ’+’: result = number1 + number2;

case ’-’: result = number1 - number2;

case ’*’: result = number1 * number2;

case ’/’:

if(number2 == 0)

printf(“\n除数为零,不能计算! ”);

else

上一篇:基于.NET Remoting的道路运输管理系统 下一篇:浅谈教学机房的管理与维护