论文部分内容阅读
摘要:计算机科学导论是大学生入校接触的第一门计算机基础课程,是其他计算机类课程的奠基石,如何上好这门课程就显得尤为重要。本文分析计算机科学导论课程建设实施现状,指出“计算机工具论”的教学模式的不足之处,提出基于计算思维能力培养的计算机科学导论课程的改革,并给出了在课程改革中的一些建议。
关键词:计算思维;课程改革;计算机科学导论
引言
20世纪90年代末期,教育部将计算机基础课程引入大学教育中,掀起了一波以掌握办公自动化软件为主的计算机基础教育,以考取国家计算机等级考试一级office为目的的应用驱动的计算机共性知识讲授为主的“计算机应用基础”。随着计算机文化进入中小学,人工智能的提出,这种以应用驱动的计算机文化教育,已经不能满足现代大学生的学习需求,特别是计算机专业类的学生。教育部高等学校计算机基础课程教学指导委员会和高等教育出版社等组织了若干次大学计算机论坛,探讨了“计算思维”的形式和内涵等。以哈尔滨工业大学、浙江大学等为代表的高等院校已经对“大学计算机”的计算思维教学做了若干年的改革实践,积累了很多经验,C9院校联合发表了关于以计算思维改造大学计算机课程的联合声明,这些都为大学计算机面向计算思维教育的改革奠定了很好的基础[1]。本文从我院开设的计算机科学导论课程着手,首先分析课程建设现状,找到教学过程中存在的不足之处,提出基于计算思维能力培养的计算机科学导论课程的改革,并给出了在课程改革中的一些建议。
1、计算机科学导论课程建设实施情况
下面,以我院《计算机科学导论》课程为例对课程建设情况进行分析。
1.1 课程设置
《计算机科学导论》是我院计算机科学与技术专业学生入学学习的第一门专业必修课,要求学生从认知模型着手,学习计算机科学内容为基础,引导学生建立计算思维。
1.2 课程建设与教学中存在的问题
第一,教育理念问题
我院是江苏省内一所服务于地方经济的应用型本科学校,《计算机科学导论》课程就是让学生认识计算机,学会操作系统和几种常用的办公自动化软件以及网络的使用。强调学生知识的掌握与应用技能的培养,重视计算机的工具价值,而忽视对后续程序类课程中要求学生的思维和创新能力的培养。
第二,教学内容定位问题
江苏省基础教育已经把信息技术课程已经纳入中小学教育体系中,大部分进入我院的学生都已经掌握一些计算机的基础操作,例如文字处理软件word、网络信息检索等,更有甚者已经掌握了一些简单的编程。所以,大学的教学内容对他们来说没有新鲜感和吸引力,从而也会降低学生的学习热情。因此《计算机科学导论》课程的实践内容偏重于office软件,已经远远不能满足学生的需求,也会错误的引导学生“计算机工具论”的理念,从而忽视了计算思维对于问题分析和解决问题的重要作用。
第三,教考模式问题
截止目前,《计算机科学导论》课程实现了“教、学、做”一体化的教学模式,大班理论教学,小班实践操作,使该课程暴露很多弊端,例如:苏南地区的学生基础非常好,上课觉得没有学到新知识,就是中学阶段教学内容的重复;苏中地区学生基础一般,上课认真听,基本能完成教学要求;苏北地区学生基础偏差,动手能力差,自卑心理更加不愿意动手。学生基础落差较大,学习进度不一样、教师无法做到因材施教等。另外,考试模式单一,基本局限于知识点的掌握方面,如选择题、填空题、判断题和简答题,考察学生思维能力的题目很少,无法准确反应学生的学习效果以及在实战下对知识的综合运用能力。
2、计算思维对计算机科学导论课程改革的影响
2006年3月美国卡内基·梅隆大学计算机科学系主任周以真教授首次提出计算思维(Computational Thinking)的概念,所谓的计算思维就是运用计算机科学的基础概念进行问题求解、系统设计以及人类行为理解等涵盖计算机科学之广度的一系列思维活动[3]。
2.1 计算思维对计算机专业学生的作用
首先,计算思维具有规律化的作用。当我们拿到一个问题,如何进快速有效地求解呢?首先,我们会先找一个近似解,那么一个近似解是否足够?是否可以利用随机化?是否允许误报、漏报呢?我们通常选择这种循环递增的方式进行计算思维的培养,通过流程图仿真方式,进行算法训练,培养学生的计算思维能力,如图1所示。
从提出的问题中,进行抽象建模、编程模拟,并从中进行特征探索,转化为问题双方都能理解的思维模型。计算思维的训练就是通过从复杂到简约、从抽象到具体、从个性到众性,运用RAPTOR仿真方法,把一个难题重新塑造成一个双方都能理解的问题。
其次,计算思维具有规律性。当学生遇到待解决问题的时候,我们应该引导学生从具体的问题出发寻求问题的种类,进行扩展归类,从不同专业角度,将问题转化为双方都能理解的思维模式,与实践互通。计算思维的培养是一个长期而漫长的工作,初期一些思维需要实践验证,例如给定一组有序数据从中找到关键字,这个问题我们首先要分类,属于查找问题,解决该问题的方法有很多种,如顺序查找法、二分查找法等,通过实践我们知道,顺序查找法能解决该问题,时间复杂度为O(n),二分查找法同样可以解决该问题,时间复杂度为O(log2n),经过实践判断二分查找法在解决这个问题更加优越。经过长期逻辑能力的训练,有利于提升学生的逻辑思维能力,有利于对一些人类行为产生不同的深入理解。
2.2 计算机专业学生应注重计算思维的培养
计算机科学导论中的一些概念非常抽象,学生不易理解,需要学生有较好的逻辑思维能力。刚刚入学的新生如何学习计算机科学导论?纯理论的阐述,抽象空洞,学生上课听听,课后抓不住重点,学完就跟没学一样,未能体现计算机科学导论先导课程为学生建立计算思维的重要性。计算机科学导论课程是后续C语言、Java等程序语言设计课程的基础,学生实际编程是为了满足客户的需求,这就要求学生首先能就理解客户提出的要求、根据专业知识把客户的需求进行模块划分,建立数学结构模型,詳细设计阶段用具体的算法和代码实现。这些过程都要求学生从大一开始就要培养解决问题、分类、抽象问题的思维能力。另一方面,从学生的特点来说,刚刚进入大学的新生对新鲜事物求知欲望狂热,他们富有朝气,有很强的可塑性,过去12年的中小学学习在思维能力上都处于被动学习,自己还未能真正的解决过问题,所以通过本课程的学习让学生在校学习阶段,进行计算思维的培养和训练就显得尤为重要。
3、基于计算思维能力培养的计算机科学导论课程改革中应注意的问题
3.1 重实践,以流程图来代替枯燥的抽象理论灌输
《计算机科学导论》课程理论知识偏多,抽象 、枯燥难以理解,如:系统基础——顺序结构、分支结构、循环结构等,计算理论——冒泡排序、希尔排序、选择排序、递归算法等,一般的做法都是先从理论出发,举例分析,实则学生不理解,也无法培养计算思维。计算机课程的一个特性就是可以通过实践来帮助理解。在课程中侧重实践,我院引入可视化流程图,用生动的实验,成型的项目展示来触动学生的感性认识,引发自主学习的兴趣。例1:判断一个数是否为正数。分析问题属于分支结构,流程图如图2所示;例2:循环结构问题——计算100以内所有数的和,流程图如图3所示。
在实验过程中,学生不断积累经验,用实践反哺理论,用理论来引导实践,大大提升了学生的计算思维。
3.2 注重课程创新与改革
以计算思维培养为目的的计算机科学导论课程的创新与改革。改革的措施:(1)授课方式多样化。理论课堂多媒体教学,以理论灌输为主,并引导学生从基本流程图开始去验证理论概念,让学生亲自体会到计算思维在解决问题中的重要性;(2)任务驱动式的实践课。提前一周布置学生实验内容,结合课堂理论知识,尽可能地完成,同学间可以相互讨论、可以请教老师,上机前每位同学提交电子版实验报告,认可教师审核通过后方可进行上机练习;(3)打造互动教学平台。利用学校提供的网络课程平台,教师和学生定期参与讨论,邀请后续课程教师同时参与,让学生提早明白导论课程中的知识对于后期学习的重要性。
参考文献:
[1] 战德臣,聂兰顺.计算思维与大学计算机课程改革的基本思路.中国大学教学.2013[2]
[2] 林旺,孙洪涛.基于软件应用的计算思维能力培养教学设计.中国电化教育.2014(11)
[3] 陈国良,董荣胜.计算思维与大学计算机基础教育[J].中国大学教学,2011(11)
作者简介:
郦丽,本科,泰州学院计算机科学与技术学院,副教授,研究方向:形式化验证。
关键词:计算思维;课程改革;计算机科学导论
引言
20世纪90年代末期,教育部将计算机基础课程引入大学教育中,掀起了一波以掌握办公自动化软件为主的计算机基础教育,以考取国家计算机等级考试一级office为目的的应用驱动的计算机共性知识讲授为主的“计算机应用基础”。随着计算机文化进入中小学,人工智能的提出,这种以应用驱动的计算机文化教育,已经不能满足现代大学生的学习需求,特别是计算机专业类的学生。教育部高等学校计算机基础课程教学指导委员会和高等教育出版社等组织了若干次大学计算机论坛,探讨了“计算思维”的形式和内涵等。以哈尔滨工业大学、浙江大学等为代表的高等院校已经对“大学计算机”的计算思维教学做了若干年的改革实践,积累了很多经验,C9院校联合发表了关于以计算思维改造大学计算机课程的联合声明,这些都为大学计算机面向计算思维教育的改革奠定了很好的基础[1]。本文从我院开设的计算机科学导论课程着手,首先分析课程建设现状,找到教学过程中存在的不足之处,提出基于计算思维能力培养的计算机科学导论课程的改革,并给出了在课程改革中的一些建议。
1、计算机科学导论课程建设实施情况
下面,以我院《计算机科学导论》课程为例对课程建设情况进行分析。
1.1 课程设置
《计算机科学导论》是我院计算机科学与技术专业学生入学学习的第一门专业必修课,要求学生从认知模型着手,学习计算机科学内容为基础,引导学生建立计算思维。
1.2 课程建设与教学中存在的问题
第一,教育理念问题
我院是江苏省内一所服务于地方经济的应用型本科学校,《计算机科学导论》课程就是让学生认识计算机,学会操作系统和几种常用的办公自动化软件以及网络的使用。强调学生知识的掌握与应用技能的培养,重视计算机的工具价值,而忽视对后续程序类课程中要求学生的思维和创新能力的培养。
第二,教学内容定位问题
江苏省基础教育已经把信息技术课程已经纳入中小学教育体系中,大部分进入我院的学生都已经掌握一些计算机的基础操作,例如文字处理软件word、网络信息检索等,更有甚者已经掌握了一些简单的编程。所以,大学的教学内容对他们来说没有新鲜感和吸引力,从而也会降低学生的学习热情。因此《计算机科学导论》课程的实践内容偏重于office软件,已经远远不能满足学生的需求,也会错误的引导学生“计算机工具论”的理念,从而忽视了计算思维对于问题分析和解决问题的重要作用。
第三,教考模式问题
截止目前,《计算机科学导论》课程实现了“教、学、做”一体化的教学模式,大班理论教学,小班实践操作,使该课程暴露很多弊端,例如:苏南地区的学生基础非常好,上课觉得没有学到新知识,就是中学阶段教学内容的重复;苏中地区学生基础一般,上课认真听,基本能完成教学要求;苏北地区学生基础偏差,动手能力差,自卑心理更加不愿意动手。学生基础落差较大,学习进度不一样、教师无法做到因材施教等。另外,考试模式单一,基本局限于知识点的掌握方面,如选择题、填空题、判断题和简答题,考察学生思维能力的题目很少,无法准确反应学生的学习效果以及在实战下对知识的综合运用能力。
2、计算思维对计算机科学导论课程改革的影响
2006年3月美国卡内基·梅隆大学计算机科学系主任周以真教授首次提出计算思维(Computational Thinking)的概念,所谓的计算思维就是运用计算机科学的基础概念进行问题求解、系统设计以及人类行为理解等涵盖计算机科学之广度的一系列思维活动[3]。
2.1 计算思维对计算机专业学生的作用
首先,计算思维具有规律化的作用。当我们拿到一个问题,如何进快速有效地求解呢?首先,我们会先找一个近似解,那么一个近似解是否足够?是否可以利用随机化?是否允许误报、漏报呢?我们通常选择这种循环递增的方式进行计算思维的培养,通过流程图仿真方式,进行算法训练,培养学生的计算思维能力,如图1所示。
从提出的问题中,进行抽象建模、编程模拟,并从中进行特征探索,转化为问题双方都能理解的思维模型。计算思维的训练就是通过从复杂到简约、从抽象到具体、从个性到众性,运用RAPTOR仿真方法,把一个难题重新塑造成一个双方都能理解的问题。
其次,计算思维具有规律性。当学生遇到待解决问题的时候,我们应该引导学生从具体的问题出发寻求问题的种类,进行扩展归类,从不同专业角度,将问题转化为双方都能理解的思维模式,与实践互通。计算思维的培养是一个长期而漫长的工作,初期一些思维需要实践验证,例如给定一组有序数据从中找到关键字,这个问题我们首先要分类,属于查找问题,解决该问题的方法有很多种,如顺序查找法、二分查找法等,通过实践我们知道,顺序查找法能解决该问题,时间复杂度为O(n),二分查找法同样可以解决该问题,时间复杂度为O(log2n),经过实践判断二分查找法在解决这个问题更加优越。经过长期逻辑能力的训练,有利于提升学生的逻辑思维能力,有利于对一些人类行为产生不同的深入理解。
2.2 计算机专业学生应注重计算思维的培养
计算机科学导论中的一些概念非常抽象,学生不易理解,需要学生有较好的逻辑思维能力。刚刚入学的新生如何学习计算机科学导论?纯理论的阐述,抽象空洞,学生上课听听,课后抓不住重点,学完就跟没学一样,未能体现计算机科学导论先导课程为学生建立计算思维的重要性。计算机科学导论课程是后续C语言、Java等程序语言设计课程的基础,学生实际编程是为了满足客户的需求,这就要求学生首先能就理解客户提出的要求、根据专业知识把客户的需求进行模块划分,建立数学结构模型,詳细设计阶段用具体的算法和代码实现。这些过程都要求学生从大一开始就要培养解决问题、分类、抽象问题的思维能力。另一方面,从学生的特点来说,刚刚进入大学的新生对新鲜事物求知欲望狂热,他们富有朝气,有很强的可塑性,过去12年的中小学学习在思维能力上都处于被动学习,自己还未能真正的解决过问题,所以通过本课程的学习让学生在校学习阶段,进行计算思维的培养和训练就显得尤为重要。
3、基于计算思维能力培养的计算机科学导论课程改革中应注意的问题
3.1 重实践,以流程图来代替枯燥的抽象理论灌输
《计算机科学导论》课程理论知识偏多,抽象 、枯燥难以理解,如:系统基础——顺序结构、分支结构、循环结构等,计算理论——冒泡排序、希尔排序、选择排序、递归算法等,一般的做法都是先从理论出发,举例分析,实则学生不理解,也无法培养计算思维。计算机课程的一个特性就是可以通过实践来帮助理解。在课程中侧重实践,我院引入可视化流程图,用生动的实验,成型的项目展示来触动学生的感性认识,引发自主学习的兴趣。例1:判断一个数是否为正数。分析问题属于分支结构,流程图如图2所示;例2:循环结构问题——计算100以内所有数的和,流程图如图3所示。
在实验过程中,学生不断积累经验,用实践反哺理论,用理论来引导实践,大大提升了学生的计算思维。
3.2 注重课程创新与改革
以计算思维培养为目的的计算机科学导论课程的创新与改革。改革的措施:(1)授课方式多样化。理论课堂多媒体教学,以理论灌输为主,并引导学生从基本流程图开始去验证理论概念,让学生亲自体会到计算思维在解决问题中的重要性;(2)任务驱动式的实践课。提前一周布置学生实验内容,结合课堂理论知识,尽可能地完成,同学间可以相互讨论、可以请教老师,上机前每位同学提交电子版实验报告,认可教师审核通过后方可进行上机练习;(3)打造互动教学平台。利用学校提供的网络课程平台,教师和学生定期参与讨论,邀请后续课程教师同时参与,让学生提早明白导论课程中的知识对于后期学习的重要性。
参考文献:
[1] 战德臣,聂兰顺.计算思维与大学计算机课程改革的基本思路.中国大学教学.2013[2]
[2] 林旺,孙洪涛.基于软件应用的计算思维能力培养教学设计.中国电化教育.2014(11)
[3] 陈国良,董荣胜.计算思维与大学计算机基础教育[J].中国大学教学,2011(11)
作者简介:
郦丽,本科,泰州学院计算机科学与技术学院,副教授,研究方向:形式化验证。