APP下载

突出能力培养目标的程序设计课程的研究

2016-09-30王颖张菁杨松张鑫吴俊峰王建彬

大学教育 2016年8期
关键词:程序设计能力培养

王颖+张菁+杨松+张鑫+吴俊峰+王建彬

[摘 要]面向大一学生开设的程序设计类课程,主要教学目标是培养学生分析问题、解决问题等各方面能力,但当前程序设计课程仍采用传统按知识体系展开的教学模式,存在重理论、轻实践等问题,严重阻碍了能力培养目标的实现。计算机基础教师应根据社会发展需求和学生特点,不断努力将学生培养成为能熟练运用程序设计思想解决本专业问题的社会需求的复合型人才,将程序设计课程建设成为培养人才知识结构和综合能力的独具特色的基础课程。

[关键词]能力培养;程序设计;递进式案例教学;形象教学法;小组协作

[中图分类号] C961 [文献标识码] A [文章编号] 2095-3437(2016)08-0077-02

一、引言

作为大学计算机公共基础课程的程序设计课程,重点要培养学生利用计算机分析问题、解决问题的能力,自主学习能力,协作能力和创新能力,提高学生计算机素质,为将来应用计算机知识与技术解决本专业的实际问题夯实基础。因而,程序设计课程教学应紧密围绕能力培养目标展开。

二、大一程序设计课程目前存在的不足

从目前教学情况看,大一程序设计课程教学中尚存在以下一些问题,阻碍了对学生能力的培养。

(一)教学内容过于注重琐碎的语法现象,教学结构设计仍沿用传统教学思维

程序设计涉及很多繁缛的语法,花大量时间解释不常见的语法现象,会限制学生视野,误导学习方向和学习目标,使学生兴趣消耗殆尽、疲于应付,不利于培养学生分析问题的能力。

(二)教学中过多的思维跳跃可能导致学生弃学

一些教师由于其对问题的认识高度和深度达到了一定程度,教学时可能忽视听课对象是几乎从未接触过程序设计语言的学生,易产生思维跳跃,加上有些概念抽象不易理解,导致学生难以跟上教师思路而厌学甚至弃学,不利于学生自主学习能力的培养。

(三)易出现重理论、轻实践现象,背离能力培养目标

很多学生忽视本门课程的特点,像学其他课程一样,宁愿捧着书学习语法,也不愿上机调试,忽略了整体的编程思想,偏离了课程的设置初衷。部分学生死记硬背知识点和程序,但实际上,学生真正的编程水平、解决问题能力及创新能力都还相对较弱。

(四)学生学习时习惯各自为政

大学的学习特点是上课来、下课散,互相间学习交流甚少。而设计规模较大的程序时,往往需要集体合作,共同完成,所以对程序设计类课程来说,协作式学习显得尤为重要。

三、教学改革措施及相应主要能力培养目标

(一)精简内容、推行递进式案例教学模式——主要培养学生分析问题能力和解决问题能力

在程序设计课程教学中,应在传统授课顺序的基础上做适度调整,引入案例教学法。案例教学法是以案例为基础的教学法,在教学过程中,以学生为主体、教师为主导、案例为主线。[1]通过设计基本案例、综合案例和应用案例的递进式案例模式展开教学。基本案例主要体现基本语法规则,综合案例反应诸多语法知识的融合,应用案例则侧重知识点的整合与应用,是最能体现算法分析与设计的部分,有利于激发创新思维。笔者对三种案例教学做了分析对比,如表1所示。

(二)教师多“换位”思考,多采用形象教学法——主要培养学生自主学习能力

教师备课时应时刻注意培养自己的“换位”意识,也就是说,时刻站在学生的立场上,思考到底该如何进入这门课,如何理解每一个概念、语法,特别是如何理解算法。要在有限的课堂教学时间内不仅阐述清楚教学内容本身,还要交代清楚来龙去脉,这就要求教师要高度提炼语言,特别是对于抽象难理解的内容,能找到形象的例子或类比进行恰到好处的说明,即采用形象教学法。所谓形象教学法,是一种在教学过程中,教师有目的地引入生动具体的场景等以形象为特征的手段,以引起学生的兴趣和注意力,从而帮助学生理解抽象概念和理论的教学方法。[2]当然,形象教学法并不局限于场景,还包括肢体语言、图示、多媒体等能帮助学生快速理解的任何手段。[3]形象教学法能起到事半功倍的作用,让学生“乐学”、“爱学”,调动学习积极性,继而将学习热忱延伸到课外的自学中,从而提高自主学习能力。

(三)加强实践教学,引入小组协作学习模式——主要培养学生解决问题能力、自主学习能力、创新能力和协作能力

实验是程序设计课程教学的一个重要环节,可以帮助学生加深对理论的理解和掌握,对于拓展学生的思维空间,培养学生的分析能力、解决问题能力、实践能力与创新精神,提高学生的综合素质具有极其重要的作用。[4]为切实加强实践教学效果,可从以下几方面做出有益尝试:

1.优化实验内容,采用不同层次程序案例组织实验教学

为保障实验教学效果最大化,教师有必要优化实验内容、对实验内容予以充分设计,引入既符合教学内容和目标又能激发学生学习兴趣的实验题目。同时针对不同层次不同特点的学生设置不同难度的实验题目,既保证基础薄弱的学生跟得上、积极性不减,又保障充分挖掘学生的最大潜力、激发创新意识、开拓创新思维。

2.针对大型程序案例,引入小组协作学习模式

大型程序案例往往需要团队合作,可采用小组协作式学习模式,培养团队协作能力。通过教师实施组织、管理、监控、评价等方式完成大型任务开发,使教师与学生、学生与学生之间互相交流、相互促进、共同进步。[5]

(1)分组原则

为克服部分学生的思维惰性,分组时每组人数不能过多,既要保证案例规模与小组人数的匹配,又要兼顾成员间层次的搭配。为了让每个学生得到全方位的锻炼,每次分组时不必拘泥于固定人数和固化的角色分配,可以经常变换小组成员构成。

(2)分组实施

上机实践前,教师要依据教学进度和教学目标拟定好程序案例,根据案例规模和难易程度进行分组,每组自行推选组长,组长组织大家进行组内分工、自查资料并在上机课前尽可能完成各自任务,以节省上机时间。

上机课时,教师要结合案例阐明重点、难点和教学目的,帮助学生分析问题、引导学生积极思考如何解决、需要用到哪些知识点来解决。因学生提前自主学习已经有了自己的见解,经教师点拨,对问题会有更深层的理解,此时,通过小组讨论,容易得出最优解决方案。接下来,小组成员要修改、完善自己的任务。最后,教师要结合程序案例归纳总结。教师要对优秀作品予以展示,增加学生的自豪感。

上机课后,教师要给学生布置课外任务或学生自行拟题,继续以小组为单位开展研究、培养团队精神,增强自主学习能力、创新能力和协作能力。

3.强化实践教学过程管理

(1)学生上机易“开小差”,需加强引导

目前计算机已相当普及,其通用性和娱乐性决定了学生上机课时难免分心,经常会玩玩游戏、看看视频。这就需要教师不断加强引导,一是布置足够数量和一定难度的实验内容充实课堂,让学生没有闲暇时间顾及其他;二是检查实验任务的完成情况,增加学生完成实验内容的紧迫感。

(2)积极深入学生,鼓励好的程序设计思路

由于性格等原因,相当一部分学生不愿发问,结果问题越攒越多,导致课堂效率低下。为改善这种局面,教师不妨更加积极地深入到学生中,及时发现问题、主动引导排除问题,既保护学生的自尊心又能敦促学生赶上教学进度。同时,如果学生有更好的程序设计思路,还可通过多媒体教学软件让学生示范给全班同学看,学生本人受到极大鼓舞的同时,其他学生也拓展了思维,有利于创新能力的培养。

四、结语

教学改革不是一蹴而就的,计算机基础教师应根据社会发展需求和学生特点,不断努力将学生培养成为能熟练运用程序设计思想解决本专业问题的社会需求的复合型人才,将程序设计课程建设成为培养人才知识结构和综合能力的独具特色的基础课程。

[ 参 考 文 献 ]

[1] 付百文.强化案例教学的程序设计类课程体系改革[J].计算机教育,2015(16):18-19.

[2] 宋体忠.形象教学法在技校电工电子教学中的应用[J].职业,2012(9):18-19.

[3] 孙继红.关于形象教学法的教学应用课题设置略议[J].大众文艺,2013(7):247-248.

[4] 吴永芬,陈卫卫,李志刚,李清.面向创新实践能力培养的C语言程序设计实践教学改革[J].计算机教育,2014(3):88-91,96.

[5] 蔡彬彬.协作学习理论在Java语言程序设计教学中的应用研究[J].商丘职业技术学院学报,2013(5):42-44.

[责任编辑:刘凤华]

猜你喜欢

程序设计能力培养
基于OBE的Java程序设计个性化教学研究
基于Electron.js的风向玫瑰图绘制程序设计与实现
项目化教学在Python程序设计课程中的应用
C++程序设计课程教学改革研究
医学专业“Python程序设计”课程教学改革总结与思考
“C语言程序设计”课程混合教学探索
基于就业视角的中职烹饪专业教学研究
体育教学中学生合作学习能力的培养研究
数学归纳法在高中数学教学中的应用研究
信息技术教学中学生自主探究能力的培养探析