大学计算机课程联动教学改革的研究

2018-05-23 10:24肖奕刘传平
大学教育 2018年3期
关键词:大学计算机计算思维教学改革

肖奕 刘传平

[摘 要]大学计算机课程体系作为本科生通识教育的重要组成部分,是培养学生信息素养和计算思维的重要环节。本文结合大学计算机课程教学的现状,阐述了基于计算思维的大学计算机基础课程和程序设计课程联动教学改革的总体思路与教学实践。

[关键词]计算思维;大学计算机;教学改革

[中图分类号] G642.0 [文献标识码] A [文章编号] 2095-3437(2018)03-0004-04

计算思维曾经是数学家、计算机科学家、软件工程师等人的专利。然而随着计算机的普及,其应用领域的爆炸性发展,计算思维不再是这些专业人员的专属,它逐渐普及成为所有大学生的必备技能。因此,计算机课程教育提出以计算思维作为大学计算机基础教育和课程改革的出发点,并就此开展了积极的讨论、研究和实践。教育部高等学校大学计算机课程教学指导委员会在计算思维教学改革宣言中指出:以计算思维为导向的计算机教学改革,将在很大程度上提升中国大学生的思维水平和认识境界,并以此提高整个社会对于现代技术的认知和理解[1]。

一、我校计算机基础课程教学现状

我校作为一所多学科协调发展的全国重点大学,以培养“品德优良、基础厚实、知识广博、专业精深”的高素质创新人才为己任。大学计算机基础课程体系是为全校大一学生开设的计算机基础课程,内容涉及计算机各领域概念和知识层面的内容及大学生必不可少的应用技能、思维能力。目前该课程体系在教学中存在不尽如人意之处,主要体现在以下方面:

(一)课程内容

我校就大学计算机基础课程进行了多次改革。早期开设计算机文化概论课程(大一一学期)和C语言程序设计课程(大一二学期),两门课程的知识点几乎完全分离:计算机文化概论的主要内容为计算机基础知识,如Windows 7的使用、Office系列的操作、网络基本知识和技术;C语言程序设计则注重学生编程操作。之后根据专业需要将课程重新设置,文理专业的学生学习计算机文化基础和C语言程序设计:计算机文化基础保留计算机文化概论部分内容,另外增加了算法和数据库的基础知识;工科专业的学生学习计算机导论和C++语言程序设计:计算机导论弱化了Office操作,内容包括计算机基础知识、硬件原理、操作系统、算法、数据结构、程序设计数据库等,为后续的C++程序设计课程做了算法铺垫,但计算机导论涉及的知识点多,基本上是该领域知识的浓缩版,因而在讲述该课程的时候,知识点容易浮于表面,学生不能从更深层面理解计算机。

(二)学生基础差异大

随着计算机普及程度越来越高,部分学生在中小学阶段已经得到了相关信息技术知识和技能的培训,当然也有部分学生是白纸一张。但教学以课程班为单位,一个课程班通常按专业由3到4个自然班组成,没有按照学生计算机水平差异进行分层次教学,使得基础好的学生“吃不饱”,基础差的学生“消化不了”,久而久之,导致学生只注重知识的背诵记忆以应付考试,缺乏对计算机相关知识的实际应用能力。

(三)教师教学方法单一

教学中多数老师采用案例教学法,案例虽然经典,但知识更新较慢。各专业混合的课程班,在一定程度上阻碍了教师在专业层面上进行内容重組和案例、练习设计,同时也使教师难以根据学生能力分层设置案例和练习,因此,缺少对学生解决实际问题的能力和创新能力的培养。

二、计算思维与分层教学

计算思维(Computational Thinking)是2006年由美国卡基梅隆大学周以真教授提出:计算思维是运用计算机科学的基础概念进行问题求解、系统设计以及人类行为理解等涵盖计算机科学值广度的一系列思维活动[2]。它代表着一种普遍的认识和一类普适的技能,每个大学生都应该掌握它的学习和应用。因此,《九校联盟(C9)计算机基础教学发展战略联合声明》认为,培养复合型创新人才的一个重要内容就是要使他们逐渐养成一种新的思维方式——计算思维[3]。

计算思维不是计算机编程,不是要使学生像计算机那样思考,而是建立在计算过程的能力和限制之上,由机器执行,通过约简、嵌入、转换和仿真等方法,把复杂问题阐述成一个可解决的问题,使学生敢于去处理那些原本无法由个人完成的问题求解。

著名心理学家、教育家布卢姆提出“掌握学习理论”,即“给学生足够的学习时间,同时使他们获得科学的学习方法,通过他们自己的刻苦努力,应该都可以掌握学习内容”。学生在知识基础和专业背景及需求上存在差异,比如物探专业、资勘专业的学生计算机编程能力较强,文管专业的学生更多的是进行数据分析,而珠宝、艺术专业的学生更多的是进行多媒体数据的处理,不同的学生对不同的教学内容的关注度和需求不同,所以就应该采取分层教学的方法,在不同程度上培养学生的信息素养和计算思维。

三、大学计算机课程和程序设计课程联动教学方案

大学计算机课程与程序设计基础课程之间有着密不可分的联系。大学计算机课程中计算机基础、软硬件平台与计算环境、算法与程序设计基础、数据处理和多媒体技术等培养学生对计算机的理解,让学生具有一定的计算思维;程序设计基础课程则以具体计算机高级语言(如C、C++)强化学生求解具体问题的能力,锻炼学生的编程实践能力,帮助学生更深入地理解计算思维。

(一)教学内容重组

2015 版《大学计算机基础课程教学基本要求》中指出大学计算机基础课程涉及的知识领域和知识单元如表1所示[4]。

其中,算法与程序开发的领域知识和程序设计课程的领域知识有部分重叠。这部分重叠的知识模块同样也是计算思维引入大学计算机基础课程之后的重点知识模块。基于表1的要求,结合本校不同专业的需求,将大学计算机课程内部分为A、B、C三级(总学时32 = 上课16 + 上机16):A级面向对编程基础要求高的专业;B级面向普通理工科专业;C级面向外语等文科专业。其后续程序设计基础课程(总学时64=上课32+上机32)分为A、B两级,如表2所示(注:两门课程的实验课部分在此表中均没有涉及)。

在不打破原有的行政班的基础上,对学习内容进行重组分级,根据不同的专业要求和学生基础重新组织教学内容,确定与其专业相适应又可以达到的教学目标,从而既降低了文科生的学习难度,又满足了理工科学生扩大知识面的需求。

(二)教学分层

在教学内容分级的基础上,考虑到有的学生在中小学阶段已经接受过计算机的相关培训,甚至参加过全国青少年信息学奥林匹克比赛(National Olympiad in Informatics),他们对计算机领域知识的诉求远远高于其他大一新生。可在新生入学周组织大一学生参加大学计算机基础摸底考试,考试内容以2015 版《大学计算机基础课程教学基本要求》中要求大学计算机基础课程涉及的知识领域为蓝本,包括计算机系统、计算机网络、多媒体技术、算法等基础知识。通过考试将教学分为三个层次(见表3):成绩优异的学生进入高级班,成绩中上的学生进入网络班,其他学生则进入普通班。

高级班的学生为已掌握了大学计算机课程A级的相关知识,对编程有兴趣的学生,设置的授课内容主要是计算机编程及算法,并结合程序设计加深学生对大学计算机基础知识的理解与应用。

网络班和普通班的教学内容仍以《大学计算机基础课程教学基本要求》中规定的为主,只是在教学手段上有差异:网络班主要采用互联网视频自学为主,老师小班辅导和讨论为辅;普通班则采用传统课堂教学为主,网络教学为辅。

在大学计算机课程教学结束后,组织大一学生进行计算机程序设计基础摸底考试,成绩优异的学生进入高级班学习,通过组织讲座和参加比赛的方式加强学生对计算机专业领域知识的理解,着重培养他们的实践能力和创新能力;其他大一的学生则进入普通班,教师采用网络教学+课堂教学的混合式教学方式,培养他们对计算机领域知识的理解能力和应用能力;另外,针对往届未能通过计算机程序设计考试的学生开设重修班,基于知识点进行辅导练习。

(三) 教学手段

在学时学分压缩的背景下,必须在有限的课内教学中要求学生掌握更多的领域知识,这必将将课内学习延伸到课外自学,可借助于“MOOC+MOODLE”,推动本校大学计算机基础课程体系教学改革实践。

MOOC(massive open online course)大规模开放在线课程,向大众提供中国知名高校的MOOC课程,实现了一种知识传播。MOODLE是我校自行搭建的虚拟学习环境。我校在共享MOOC 课程资源(如北京理工大学的大学计算机课程)基础上,考虑到本校学生基础及分级、分层教学的需要,于是就某些内容重新组织教学课件,并发布在校内的MOODLE平台上。各个教师可在MOODLE上对不同层级的学生布置不同的学习任务,提供不同的教学资源。学生通过MOOC和MOODLE在网上完成基础内容的自学和相关作业任务。利用MOOC和MOODLE,各个教师就可以获悉学生的反馈,在线下课堂中讲解重要知识点,组织学生进行研讨式学习、展示与点评式教学等。“MOOC+MOODLE”的教学方式使得学习能力强的学生可以学习到更多内容,让基础薄弱的学生通过反复观看教学视频而学习得更扎实。

(四)过程化考核机制

大学计算机基础课程体系不仅要讲授教学知识点,还要培养学生的学习能力、思维能力等。教学手段的改变也促进了学生的成绩考评机制的改变,传统的以期末考试为主的考核方式向多维度的质量评价转变,加强对学生的平时学习过程的考核,如图1所示。

教师在课堂上可以根据学生层级及专业特点,开展课堂测验和讨论,布置上机实践任务,根据学生的表现计分。

课后在MOODLE和百科园考试平台组织学生完成单元练习、月考和期中考试,检验学生的实际学习效果,题目不仅包括选择、判断等客观题,也包括工具操作类、程序设计类等应用型题目。机器自动阅卷能减少教师阅卷压力的同时,还可以快速反馈学生存在的问题。在承认人的发展有差异的前提下,对学生进行多层次评价,是对每个学生的劳动成果应有的肯定。按知识单元组织的单元练习(允许多次答题,取最好成绩为单元练习成绩)和月考主要是对课堂内容的检测,一般来讲,学生只要认真听就可达标;期中考试和期末考试则是对学生知识结构有机结合的检验。

综合性作业主要包括开阔视野类的调研性学习题目、工程设计分析类应用性题目、工具应用实践性题目等,学生4~6人为一组,各组完成题目的资料查阅、整理、总结、展示等,利用小组合作学习和成员之间的互帮互学形式,师生之间、学生之间充分互动、互相激励,为每个学生创造整体发展的机会。特别是学生间人际互动,利用了学生层次的差异性与合作意识,协调发展了学生的多方面素质。

(五)实践型教学探索

计算思维的培养,不能将大学计算机课程变为单纯的工具學习和理论积累,也不应只停留在对各种科学问题和工程问题的认识与验证的层面,而是要努力培养学生的综合能力和创新意识,加强实践教学,更贴近科学研究,贴近工程实际。我校每年约有400万元用于大创新项目,借助高校大学生创新创业项目训练,组织学生团队完成对MOODLE平台的开发和维护,引导学生主动开展新知识的学习与实践,学以致用,提升实践能力和创新能力。组织学生参加各种竞赛,比如天梯赛、互联网+、物联网以及机器人、ACM等竞赛,提升学生面向新经济、新工业等的创新和实践能力。目前,我校MOODLE平台的实际维护都是由大一和大二的学生完成,平台访问量已达到38万余次,日均访问量近千次。2016和2017两年组织大一学生参加天梯赛均获得参赛队二等奖、团体三等奖。

四、结束语

大学计算机课程作为本科生通识教育的重要组成部分,是培养学生信息素养的重要环节。计算思维的引入为大学计算机教学改革带来了机遇,也带来更大的挑战[5]。计算思维能力的培养不是一朝一夕就能完成的,需要我们把它融入大学计算机教学的每一节课、每一个实验作业和每一次实践任务中。随着以计算思维为导向的大学计算机课程改革的不断加强和深入,教学过程中总会遇到一些新的问题要解决,这是一个长期的过程,需要我们不断探索和实践。

[ 参 考 文 献 ]

[1] 教育部高等学校大学计算机课程教学指导委员会.计算思维教学改革宣言[J].中国大学教学,2013(7):8-10,17.

[2] 周以真.计算思维[J].中国计算机学会通讯,2007(11):83-85.

[3] 宋焕林.基于计算思维的计算机基础课程教学方法研究[J].电脑知识与技术,2015(36):85-86

[4] 教育部高等学校计算机课程教学指导委员会.大学计算机基础课程基本要求[M].北京:高等教育出版社,2015.

[5] 基于计算思维的大学计算机教学研究[J].中国大学教育,2015(9):55-58

[责任编辑:钟 岚]

猜你喜欢
大学计算机计算思维教学改革
以自主学习能力培养为目标的大学计算机课程教学改革
独立学院“大学计算机”实验课程教学改革
民办高校以NCRE为指导的大学计算机课程教学研究
程序设计课程中计算思维和应用能力培养问题研究
民族高校C语言程序设计课程教学改革的研究
算法的案例教学探析
浅谈艺术专业学生计算思维能力的培养
基于人才培养的技工学校德育实效性研究
现代信息技术在高职数学教学改革中的应用研究
以职业技能竞赛为导向的高职单片机实践教学改革研究