计算机编程课程教学改革探讨

谢美萍+陈媛
[摘 要]随着时代的发展,计算机编程课程已经成为高等学校非计算机专业学生的计算机基础课程,面对不同专业基础的大学生,如何培养他们良好的编程习惯和逻辑思维,提高他们的计算机编程能力等已被不少院校广泛关注,他们也已将此课程列为教改课程。因此,可以以C++为例,探讨该教改课程的教学模式、教学内容、教学方法、教学手段等内容。
[关键词]计算机编程;课程改革;C++
[中图分类号] TP312;G642.0 [文献标识码] A [文章编号] 2095-3437(2016)04-0110-02
一、引言
所谓计算机编程,就是人类运用某种计算机编程语言设计程序代码而让计算机运行得到结果的过程。人类只需将所要解决问题的思路、方法和手段等通过计算机能够理解的形式告诉计算机,使得计算机能够根据人的指令一步步去工作,完成预先设定的任务。在高校,计算机编程也已成为许多非计算机专业学生的基础课程。如何讲解好计算机编程课程日益成为很多高校关注的问题,而且不少院校已经将计算机编程课程列为教改课程,针对教改课程的教学研究方法也就此展开。苏莉蔚,白洪涛,朱晓旭[1]针对C语言程序设计课程提出分段教学法与项目驱动法,以及考试形式的改革等方法;时海亮,汪远征[2]针对非计算机专业的计算机编程设置,以VB为例提出了一些建议;孟雪梅[3]提出在程序设计教学中培养学生的创新能力的思想;张青,苏叶健,高伟锋[4]在软件开发技术类课程中采用语境式教学,采用营造实践环境,以用代学,以用促学,并结合项目教学进行语境式教学方法研究与应用的探索,以上所有这些改革方法都取得了较好的效果。
本文主要以C++为例,从该课程的现状出发,在教学内容及相应的改进措施等方面展开研究,以提出一些改进措施。
二、计算机编程课程现状分析
(一)学时少
尽管计算机编程已经延伸到非计算机类专业,但是因为对课程的要求不一样,不同院校设定的学时也不一样,有些总学时为32学时,有些为48学时,但无论多少学时,都要求学生通过这些有限学时的学习达到掌握计算机编程的基本内容和编程思想的要求。由于该课程的理论性和实践性都很强,因此这门课程既需要通常的理论课时,也需要一定的上机实践的课时。教师在理论课上主要讲解基本的语法知识、算法的设计思想以及相应的编程方法。但是由于学时严重不足,教师往往顾此失彼,学生也疲于奔命,很多专业的学生上机实践的课时大打折扣,这就要求学生自己在课外多加强练习。而对初学者而言,可能一个简单的问题都会影响到后续的学习,比如,在将变量定义成整型后,很多学生对“8 / 5”这样简单的算术运算结果为什么是1感到不理解。诸如此类的问题很多,学期结束后,学生普遍感到计算机编程课程难懂、不好理解,不知道编程能解决什么样的问题,从而失去了学习热情,造成应用水平相对较低、不能满足课程要求等问题。尤其对于学时数只有32学时的非计算机专业的学生来说,要想在有限的学时内学好这门课程,这对教师和学生都是非常大的挑战。
(二)专业基础不同
很多院校将计算机编程课程拓展到非计算机专业后,该课程变成了一门相关专业的公共基础课,这就可能会出现文科专业的学生与理科专业的学生同在一个班级上课的情况。这时由于思维方式的差异会导致:如果教师课程内容讲快了,文科专业的学生跟不上讲课进度;如果教师课程内容讲慢了,理科专业的学生又会觉得比较乏味的情况。因此,如何计划好讲课内容以及采用什么样的讲课方法对教师来说都是一种挑战。我们采取的解决方法通常是对同一个算法编排两个不同难度的例题供课堂练习使用。很多学生在编写好相对简单的例题后会选择去挑战编写相对难点的例题,这样既可以保证这些学生课上有事做,又能提升他们的水平,而且一旦程序编译通过并运行出正确的结果时,学生也会很激动,这也激发了学生学习这门课程的热情。
(三)教学方式
本课程目前采用在机房并结合多媒体的教学方法,这种教学方法的优点是每讲好一个例题,学生可以立即上机操作实践,若有问题可得到及时解决。但因为学时的限制,学生也只能在课堂上练习例题,更多的练习需要学生课后自己去加强。实践证明,采用在机房并结合多媒体的授课方式是在学时有限的情况下相对有效的一种教学方法。
三、计算机编程课程的改进措施
(一)精心安排教学内容
针对只有32学时的计算机编程课程,教学内容的设计非常重要。学生通过掌握这些内容,可以熟悉相关的编程软件及其用法,了解计算机编程的特点,掌握计算机编程的逻辑思维并会应用编程解决一些简单的实际问题,本文以C++为例进行探讨。
基于上述目的,教学内容主要包括C++语言的特点、C++语言的数据类型、C++语言的结构、数组、指针、结构体和类等相关内容。
(二)采用启发式教学方法
这要求教师在讲课时提出问题要自然,具有一定的逻辑性;分析问题要简明扼要、透彻,防止繁琐杂乱,尤其是在设计算法时更应如此;解决问题要切实准确,要引导学生积极思考。要做到这一点,教师必须考虑到在讲解一个问题时,怎样引导学生多动脑筋。比如在讲解多个if语句时,很多学生不是很理解,这样教师可以先从简单的学生熟知的函数入手,比如符号函数,讲清楚如何设计条件,结果会以什么样的形式显示,在学生充分理解后再引入相对复杂一些的条件;也可以从日常实际的生活入手,比如购买商品时会有不同的折扣,以此为例,让学生有一个感性的认识后再来设计算法。
(三)承上启下、及时归纳的教学方法
很多院校的计算机编程课程安排在大学一年级的第一学期,而大学的教学方式与中学的教学方式有着明显的区别。首先是教学方式的不同。大学教学不再像中学教学那样,一个知识点大学教师不会反反复复讲好几遍,对于难度稍高的知识点教师会讲得比较详细,而相对简单的知识点可能就讲得比较快甚至一带而过。其次,教学内容的量上也会有明显的区别。为了能够将课程设计的内容讲解完,教师每次的讲课内容量比较大,学生不容易全部掌握。这就需要教师及时总结本次课堂上需要重点掌握的内容,告诉学生这次课堂讲授内容需要达到一个什么样的水平,这样学生自己才有一个衡量标准。比如,第一次课结束时,大部分的专业可能就将C++的概况及特点讲解完毕,学生会觉得信息量太大,这时只需告诉学生需要掌握C++的几个特点,可以强调一下几个重点的语句即可。最后,大学里相邻两次课的授课时间间隔相对较长,教师上次课讲的内容到下次课时学生容易忘记。这就要求学生做到课前认真预习,课后复习并做练习,以巩固所学内容。下次上课时,教师可与学生一起先回顾上次课堂的教学内容,并简单阐述一下本次课将要学习的内容,以做到承上启下,更好地让学生将知识点连接起来。
(四)利用网络平台,建立共享机制
目前好多院校都有自己的教学网络平台,教师需要将课程大纲、教学进度、课程文档等内容发布到该平台上,这些功能也是大部分教师和学生对该平台常用的功能。除此之外,在该平台上教师也可以建立讨论组,学生可以将学习过程中遇到的问题等通过平台反馈给教师,甚至可以进行在线的互动。
(五)注重实践,加强学生的编程能力,培养学生良好的编程习惯
学习任何计算机编程语言,都需要学生多加强课后练习,在实践中掌握编程技巧及上机调试的方法,很多概念和知识点需要通过上机练习才能更好地理解。同时,练习也能提高其对当前新的编程语言及应用系统软件的掌握程度和使用能力。编程是一门实用实践性较强的课程,所以学生实际编程解决问题的能力是检验教学成绩的关键。因此,教师需要在教授基本知识的同时,给学生创造更多的机会编写可用、实用性较强的程序。如果条件允许,也可以让学生多参与一些课题或项目,以提高学生的编程能力。
此外,要让学生养成一个良好的编程习惯,在编写程序之前先设计好流程图,不要拿到问题就开始编写代码。此外,在编写源代码时应尽可能简单明晰,易读性要强,直观明了,可以适当地添加一些注释语句,遵守编程过程中约定俗成的一些标准,这样自己或他人在阅读程序时都容易理解。同样,养成一个好的编程习惯对提高自己的编程水平也会有一定的帮助。
从以上几方面进行教学改革,既可以将抽象的理论用通俗易懂的示例进行讲解,又能让学生因为学以致用而提高学习的积极性,能取得非常良好的教学效果。
四、总结
计算机编程课程既具有严密的逻辑性,又有一定的结构性。学习计算机编程可以培养学生运用算法解决实际问题的能力。因此,计算机编程课程是培养全面发展、能迎接信息化社会挑战的新型人才所必需的,这也是这门课程越来越受到高校关注的主要原因之一。
[ 参 考 文 献 ]
[1] 苏莉蔚,白洪涛,朱晓旭.《C语言程序设计》课程教学改革探讨[J].大学教育,2013(6):122-123.
[2] 时海亮,汪远征.关于非计算机专业“计算机编程”课程设置的一些思考[J].电子设计工程,,2014(8):15-17.
[3] 孟雪梅.在程序设计教学中培养学生的创新能力[J],JOURNAL OF JILIN COMMERCIAL COLLEGE,2006(1):39-40.
[4] 张青,苏叶健,高伟锋.计算机编程课程的语境式教学实践[J].南宁职业技术学院学报,2014(6):61-63.
[责任编辑:陈 明]
相关文章!
  • 小学语文课堂教学中的激励性评

    摘 要:激励性评价作为小学常用的教学方式,在教师日常教学中具有重要作用,在各小学学科中都有应用。在小学语文课堂上,语文教师需要与学

  • 高等教育人工智能应用研究综述

    奥拉夫·扎瓦克奇-里克特 维多利亚·艾琳·马林【摘要】多种国际报告显示教育人工智能是当前教育技术新兴领域之一。虽然教育人工智能已有约

  • 生活引路,作文随行

    周海波【摘 要】“写作教学应贴近学生实际,让学生易于动笔,乐于表达,应引导学生关注现实,热爱生活,表达真情实感。”教师如何让学生更加贴