计算机教育
Computer Education
第 17 期2014 10 日
中图分类号:G2
文章编号:1672-5913(2014)17-0005-03基于计算思维的大学计算机基础课程教学改革
於建华,凌 云
(苏州大学 计算机科学与技术学院,江苏 苏州 215131)
摘 要:如何在课堂教学中培养学生的创新能力和计算思维能力,已成为大学计算机基础课程教学改革的任务之一。文章介绍大学计算机基础课程的现状以及计算思维和大学计算机基础的关系,从实验教学和理论教学两个角度阐述如何在大学计算机基础教学过程中提高学生的计算思维能力。关键词:计算思维;计算机基础;实验教学;理论教学;
0 引 言
2006年,美国卡耐基・梅隆大学计算机系的周以真教授提出应将计算思维作为一种基本技能,认为计算思维模式能应用于所有领域和所有职业。2010年,中国科学技术大学的陈国良院士将计算思维引入计算机基础教学后,计算思维在国内教育界得到了广泛重视。
1 计算思维
什么是计算思维?周以真教授给计算思维的定义是:运用计算机科学的基础概念进行求解问题、设计系统和理解人类行为的一系列思维活动。她认为计算思维具有6个特征[1]:概念化,不是程序化;根本的,不是刻板的技能;是人的,不是计算机的思维方式;数学和工程思维的互补与融合;是思想,不是人造物;面向所有的人,所有地方。这一定义为计算机教育教学理念、定位和要求赋予了更为先进、科学的内涵。针对非计算机专业的学生,龚沛曾教授等将计算思维培养细分为计算思维意识、方法和能力3个维度[2]。
2 计算思维与计算机基础
2.1 大学计算机基础课程现状
大学计算机基础教育作为大学的第一门计算
机课程,如果不能向学生展现计算机的魅力,不能让学生理解计算原理的相互关系,不能让学生掌握有效求解的思维方式,那么当面对枯燥的操作和复杂的理论时,大部分学生会知难而退。目前大学计算机基础课程存在以下几个问题。
1)工具论[3]。
目前很多老师在教学过程中习惯通过下达各种操作口令来营造操作型课堂;学生则按照老师的讲解机械地操作菜单,缺乏自主思考和解决问题的能力。这种情况导致很多学生认为学习计算机只是学习一种或几种计算机工具,特别是各种办公软件的使用方法。工具论对计算机基础教育非常有害,导致学生只注重计算机软硬件的使用,忽视对计算机素质教育以及计算思维能力的培养,而当学生处理自己专业领域中的问题时很难运用计算机求解的方法。
2)无法触类旁通。
随着计算机的高速发展,工具软件层出不穷,软件功能不断提升,学生需要知其所以然,否则很难在解决问题时举一反三。以文字处理软件为例,教师授课时一般以Word 软件为例,部分同学转到WPS 时就不知道如何编辑文档了,其实它们的本质是一样的,如字体的设置、文本查找替换、页眉和页脚设置、格式设置以及表格等基本功能并没有太大的区别,只是菜单的位置有所不同。
3)入学水平参差不齐。
基金项目:全国高等学校计算机教育研究会项目(ER2013009)。
第一作者简介:於建华,女,讲师,研究方向为计算机网络、计算机基础教育,yujianhua@suda.edu.cn。
2014
6
计算机教育
Computer Education
2013年9月,我们对2个专业共350名新
生进行了入学上机摸底测试,内容主要包含计算机基本操作(20分)、Word (20分)、Excel (20分)、PPT (20分)、Frontpage (20分)、Access (20分),总分120分,分数统计如图1所示。从生源角度分析,由于教学资源的影响,农村学生平均分小于城镇学生;从操作项分析,学生对Word 、PPT 、计算机基础操作比较熟练,但在数据库、网页制作和Excel 等内容上得分偏低。
2.2 计算机基础与计算思维的关系
计算机基础教学是培养大学生计算思维能力的重要载体[4]。计算机基础教学要注重培养学生的计算思维能力[5],使学生能够将计算思维融入到各自专业和领域中去。
计算机基础是所有新生的必修课程,已经成为大学通识教育的基础课之一,课程浓缩了计算机原理、数据结构与算法、操作系统、计算机网络与信息安全、数据库原理、多媒体技术等多个方向。虽然这些课程显得零乱、无系统性,但这些课程包含大量的计算思维案例,如计算机的产生和发展是计算思维不断拓展的过程;计算机中数据的表示是计算思维的表示;计算机的组成和工作原理是抽象和分解的运用;数据结构是研究数据表示方法及其关系的一种抽象;数据库的设计是抽象与具体的过程;枚举、递归、回溯等算法都是计算思维的典型案例;办公软件的使用是一种基本的计算思维;余额宝等应用是典型的有别于传统思维的计算思维活动。
3 教学中的计算思维培养
3.1 理论教学中的计算思维培养
根据培养目标,我们主要在以下几个方面进行教学改革。
1)教学内容。
改变传统的大信息量教材,引入新的教学内容,培养学生的创新能力和计算思维能力。我们在计算机基础内容中引入了如计算思维基础知识、计算模型、计算机硬件基础、计算机软件基础、算法思想、程序设计语言、计算机职业道德教育等知识。计算思维基础知识介绍计算思维的不同定义、特征和本质以及计算思维在不同学科中的应用;计算模型介绍计算科学的数学基础,如图论、集合论等;算法基础介绍算法的起源、定义、特征和描述方法、常用的算法设计思想以及每种算法的性能评价;计算机硬件基础介绍数制及其转换、数据的存储与表示、逻辑与门电路;计算机软件基础介绍操作系统、办公软件、数据库、数据挖掘、人工智能和神经网络;程序设计语言介绍低级语言和高级语言以及各种代表性语言,如VC 、VC++等;计算机职业道德教育介绍计算机知识产权、网络隐私以及计算机犯罪等问题。
2)教学方式。
改变传统的“一言堂”教学方法,实施互动式课堂教学和任务驱动式教学[6],使枯燥的课程变得活泼生动;用案例驱动教学法讲解办公软件使用的基本思想与方法,选取合适的案例让学生在游戏中学习,激发学生的学习兴趣,同时将计算思维能力的培养渗透到教学内容中。比如, 教师介绍操作系统时,先让学生了解一下什么是操作系统,然后引入哲学家进餐问题,从而引出操作系统如何解决并发控制;介绍图论时,引入最短路径问题、着色问题、环球旅行问题和欧拉路径问题;介绍算法概念和算法设计时,引入穷举法、回溯法、递归、分治法、贪心法、动态规划等。总之,在教学过程中教师应注重引导学生,注重培养学生获取知识的能力,注重培养学生知识创新的能力,注意课堂教学的延伸,采用
信息化手段和学生交流。
图1 计算机能力摸底测试分数分布
计算思维
3)考核机制。
传统考核方式基本以卷面考试为主,考试内容大多是对知识的记忆和简单复制,我们应该改革这种传统的应试机制。苏州大学计算机基础课程的总成绩=期中操作(20%)+期末理论考试(40%)+期末操作(20%)+过程性考核(10%)+总评性考核(10%),其中过程性考核[7]包含课堂互动、网络教学平台学习以及分组讨论的形式,总结性考核包含平时提交小论文、算法思想以及程序。实践证明这种考核机制有利于调动学生的学习积极性,有利于提高学生的创新能力,有利于提高学生的计算思维能力。
3.2 实验教学中的计算思维培养
实验课教学应注重培养学生的动手能力,增加设计性、综合性实验内容,同时将学生分成几个小组,以小组的形式完成项目,培养学生协作学习和工作的能力。教师选择具有代表性且与所学知识点充分结合的案例进行实验教学,运用计算思维的方法,培养学生的计算思维能力,让学生积极思考、主动学习、提出问题并及时解决;利用计算思维方法从多个角度提出不同的解决方案让学生自由讨论,再进行问题的求解;第三步让学生设计出算法,并让他们用自然语言进行描述,画出流程图,写出相应代码;最后让学生选择语言实现程序并调试程序。
在数据库实验和Excel实验时,我们选择了根据身份证号码求户籍所在地的案例,要求分别用SQL语句和Excel中的VLOOKUP函数实现。实验开始前,教师把从网上下载的省市县代码表发给大家,然后求出每位同学的户籍所在地。
(1)取身份证号码的前两位,后面补4个0,然后查询代码表,得到所在的省(字符串1);
(2)取身份证号码的前四位,后面补两个0,然后查询代码表,得到所在的市(字符串2);
(3)取身份证号码的前六位,然后查询代码表,得到所在的县(字符串3);
(4)户口籍所在地=字符串1+字符串2+字符串3。
下面我们给出EXCEL下第一种求解方法。
(1)首先,把代码表第一列和第二列定义为名称rg;分别把代码前两位补4个0、前四位补2个0和前六位分别定义为名称ide、ids、idl;
(2)用函数=VLOOKUP(ide,rg,2) & VLOOKUP (ids,rg,2) & VLOOKUP(idl,rg,2)求户籍所在地;
(3)函数下拉可以求出所有身份证号码的所在地址。
第二种解决方法直接使用函数实现。
(1)VLOOKUP(LEFT(L3,2)&"0000
(2)函数下拉可以求出所有身份证号码的所在地址。
学生可以从多个角度,用不同的方法,结合自己所学专业来解决相同的问题,进而提高解决问题能力,并学会用计算思维的方式解决问题。
4 结 语
计算思维能力的培养绝非一朝一夕之功,也不是通过一两门课程的教学就能完成。今后,我们将以计算思维的视角看待每门课程,在教学内容的选取与组织、实验内容的设计、教学方法的提炼上进行改革,将计算思维融入教学实践,培养学生解决问题的能力,提高教学质量。
参考文献:
[1] Wing J M. Computational thinking[J]. Communications of the ACM, 2006, 49(3): 33-35.
[2] 龚沛曾, 杨志强. 大学计算机基础教学中的计算思维培养[J]. 中国大学教学, 2012(5): 51-54.
[3] 陈国良, 董荣胜. 计算思维与大学计算机基础教育[J]. 中国大学教学, 2011(1): 7-11.
[4] 教育部高等学校计算机基础课程教学指导委员会.高等学校计算机基础教学发展战略研究报告暨计算机基础课程教学基本要
求[M]. 北京: 高等教育出版社, 2009: 2-14.
[5] 周以真. 计算思维[J]. 中国计算机学会通讯, 2007, 3(11): 83-85.
[6] 李敬兆, 管建军. 三措并举提高教学效率, 两轮驱动保障学习效果[J]. 计算机教育, 2013(6): 76-79.
[7] 路美秀, 王玉山, 巫小蓉.“离散数学”教学中计算思维能力的培养[J]. 现代计算机教育, 2013(3): 49-50.
(编辑:孙怡铭)