论计算机思维培养的论文
计算思维是运用计算机科学的基础概念进行问题求解、系统设计以及人类行为理解等涵盖计算机科学之广度的一系列思维活动。下面是学习啦小编给大家推荐的论计算机思维培养的论文,希望大家喜欢!
论计算机思维培养的论文篇一
《大学计算机基础教学中的计算思维培养》
摘要:首先仔细地分析了计算思维的定义,提出了计算思维由意识、方法和能力三个层次的内容组成;然后指出了计算机基础教学中计算思维的无意识、潜移默化教学的现状;最后提出计算机基础教学课程体系中各门课程联动改革的方案。
关键词:计算思维;大学计算机基础;程序设计
自2006年3月,美国卡内基·梅隆大学周以真教授清晰系统地阐述了计算思维,2010年10月中国科学技术大学陈国良院士在“第六届大学计算机课程报告论坛”倡议将计算思维引入大学计算机基础教学以后,计算思维得到了国内计算机基础教育界的广泛重视。然而,在具体的执行过程中遇到了许多问题,既由于认识上的不足,又由于大学计算机基础教学的特殊性。那么,如何在计算机基础教学中,培养大学生的计算思维,使大学生学会用计算思维去思考问题和解决问题,对提升计算机基础教学水平、培养卓越人才具有重要的意义。
一、计算思维的内容
计算思维古已有之,而且无所不在。从古代的算筹、算盘到近代的加法器、计算器以及现代的电子计算机,直到目前风靡全球的互联网和云计算,计算思维的内容不断拓展,推动着人类科技的进步。然而,在相当长的时期,计算思维“深藏闺中无人识”,或者不受重视。直到2006年,美国卡内基·梅隆大学周以真教授对计算思维进行了清晰系统的阐述,这一概念才得到人们的极大关注。
周以真教授认为,计算思维是运用计算机科学的基础概念进行问题求解、系统设计以及人类行为理解等涵盖计算机科学之广度的一系列思维活动。这一定义高度概括和抽象,难以理解,为此周以真教授将计算思维进一步阐述成七大类方法。然而,大学计算机基础教学的对象是非计算机专业学生,无论是定义还是进一步阐述,仍然显得晦涩难懂,对教学基本几乎没有可操作性,需要探索研究,力图重新阐述成可以开展教学的问题。
仔细分析可以发现,周以真教授的定义包含了三个层次的内容:
1.计算思维意识
计算思维是一种科学思维,与理论思维、实验思维一起构成了人类的三大思维。计算思维并不是一种新的发明,而是早已存在的思维活动,是每一个人都具有的一种技能。
在计算机基础教学中,计算思维的案例也是处处存在。问题是人们的计算思维活动是无意识的,关键是要将无意识的计算思维变成有意识的计算思维,主动地用计算思维去解决问题,应用在各自的专业中。
2.计算思维方法
计算思维方法是计算思维的核心。计算思维方法很多,周以真教授将计算思维阐述成具体的七大类方法。总的来说,计算机思维方法有两大类:一类是来自数学和工程的方法,另一类是计算机科学独有的方法。例如,对于计算积分,学习数学的人通过函数变换求解积分,而计算机是通过对积分区间进行N等分然后累加各小区间的面积来实现。学习数学的人不会采用后一种方法,后一种方法只有掌握了计算机技术的人才采用,但是仍然来自数学。
在大学计算机基础课程中,几乎每一个概念对应一种计算思维方法。例如,Cache是预置和缓存方法,多核处理器是并行外理方法;在程序设计课程中,各种常用算法以及各类问题的求解方法,如迭代法、递归法等,都是没有争议的计算思维方法;在计算机应用课程中,每一门课程每一个项目都是多种计算思维方法的集合。
3.计算思维能力
计算思维的根本目的是解决问题,即问题求解、系统设计以及人类行为理解。从计算机应用的角度来说,解决问题就是计算机的应用问题。例如,设计一个数据库应用系统、创建一个电子商务网站、制造一个机器人等都是计算机应用问题,是计算思维的目的所在。
计算思维包含的内容不是一门课程所能承担的。计算思维教学需要贯穿在所有的大学计算机基础课程中。在大学计算机基础教学中,培养计算思维能力需要有一系列的计算机应用课程作支撑和拓展,如数据技术与应用、多媒体技术与应用等课程。这些课程引导学生应用计算思维解决各种专业的问题。
二、计算思维教学现状
尽管计算思维研究不是很成熟,还有许多深层次问题需要进一步研究,但计算机基础教学界一直在大学计算机基础教学中无意识、潜移默化地培养大学生的计算思维。
教育部高等学校计算机基础课程教学指导委员会颁布的《关于进一步加强高等学校计算机基础教学的意见》、《计算机基础课程教学基本要求》等有关文件虽然没有明确提出计算思维,但是贯穿了计算思维思想。《关于进一步加强高等学校计算机基础教学的意见》提出:计算机基础教学的目标是培养学生掌握一定的计算机基础知识、技术与方法,以及利用计算机解决本专业领域中问题的能力。大学计算机基础的课程目标是“使他们在各自的专业中能够有意识地借鉴、引入计算机科学中的一些理念、技术和方法……利用计算机、认识并处理计算机应用中可能出现的问题”。简单地说,是使用计算机科学技术和方法处理问题,这是计算思维的目标。
“大学计算机基础”课程中充满着大量的计算思维案例。例如,全面展示计算机的应用,实质上起了培养计算思维意识的作用;从算盘到计算机的发展过程是计算思维内容不断拓展的过程;计算机系统是用抽象和分解来控制庞杂的任务和设计复杂的系统;数据在计算机中的表示是表示问题的方法;操作系统是用计算思维思想解决了计算机自身问题的案例;使用办公软件是一种基本的、低级的计算思维;网上检索、网上购物、网上开店是典型有别传统思维的计算思维活动;设计一个数据库就是抽象和分解的过程;设计一个动画,可以看成是一个建模和仿真的问题。
“程序设计基础”是一门关于计算思维方法的课程,是典型的计算思维课程。它涉及大量的算法,像枚举、递归、回溯等都是毫无争议的典型的计算思维典型案例;面向过程和面向对象程序设计也都是计算思维。
各种应用课程的教学目标是创作一个系统或一个作品,这也是计算思维的终极目标。
在现今的大学计算机基础教学中,计算思维教学存在着下列问题:
1.无意识的计算思维教学。由于计算思维受重视的时间不长,但是因为一方面计算机应用的本质是问题求解,与周以真教授的阐述相一致,另一方面计算机问题求解的方法就是计算思维的方法,因而广大计算机教育者都在无意识、潜移默化地实施计算思维教学。未来需要有意识地、系统性地开展计算思维教学。
2.没有从战略高度认识到计算思维对人才培养的重要性。由于早前对计算思维重要性认识不足,人们普遍认为计算思维是计算机应用能力之一,没有意识到这是与理论思维、实验思维一起构成了人类的三大思维,是21世纪人才应具备的基本技能;没有认识这关系计算机科学的发展和转型,会影响其他学科的发展,将改变计算机基础教学的面貌。所以,应从战略高度将计算思维从计算机应用能力上提升出来,作为人的一种基本技能来教学。
3.注重技术与应用的教学,忽视了“思想的教学”。这也是我校学生经过课程学习后向我们提出的意见。由于计算机应用的最终成果是一个软件或系统,因而人们重视技术和应用的教学,注重软件和系统开发的过程和细节,忽视了引领计算机应用的思维。因此计算机基础教学需要将课程提升到思想教学的高度。
三、计算思维教学方案和实施
计算机基础教学面向计算思维进行教学改革是当今教学改革的热点之一。目前各高校普遍根据教指委《关于进一步加强高等学校计算机基础教学的意见》采用了“1+X”的课程体系,发达地区有的高校采用了“2+X”的课程体系。计算机基础教学已经规范化和科学化,以计算思维能力培养为核心的计算机基础课程教学改革具有良好的基础。
需要注意的是,在大学计算机基础课程开展计算思维教学,并不是颠覆原有的课程内容,而是在原有课程内容的基础上进行提高和优化。原有课程本身在进行无意识的计算思维教学,只需将计算思维与原来的内容进行有机的结合,变无意识的为主动的、积极的、有意识的。
我们认为,开展计算思维教学是一项系统工程,各门课程应该统筹考虑、联动改革。“大学计算机基础”是关键,“程序设计课程”是重点,“‘X’门应用课程”是目的。具体方案为:
1.大学计算机基础
“大学计算机基础”是所有学生必修的课程,课程包含了计算机基本知识、基本使用技能和网络、数据库与多媒体三大核心模块使用。课程内容多、学时少、学生程度不一。如何在该课程中实施以计算思维为导向的教学改革,有难度但也是趋势,要探索和实践,具体所做工作如下。
(1)摸底测试,了解学生情况,确定实施方案。2011年9月开学,针对第一门课程对24个专业1030名新生进行入学摸底测试,内容、难度基本等同该课程的要求(除Flash制作外),每模块都是以100分为满分计分,分数统计结果见下图。对当前学生的计算机基础知识和技能的掌握有所了解,对指导该课程向计算思维提升有一定的依据。
(2)探索实施以计算思维为导向的教学方案。原则上分类实施:分为理工类、综合类和人文艺术类。主要区别是前两者增加程序设计算法要求,后者增加办公软件高级应用。
2011年秋我们选择4个理工类、综合类的专业进行试点。试点方案是弱化Office软件课堂讲解,强化实践和自主学习;保持原来网络、数据库、多媒体基本要求,精简了在后继课程中涉及的多媒体制作;腾出6周时间开展计算思维和程序设计算法教学。其中:
①利用1周(2学时)开展计算思维基础知识专题教学。主要内容包括:
科学思维:三大科学思维、计算思维及其主要内容、计算思维的作用。
计算理论:冯·诺依曼计算机、存储程序,图灵机、停机问题、图灵猜想,可计算性问题、计算复杂性、P&NP问题。
大学计算机基础由于教学对象是非计算机专业大学生,因此计算思维基础知识教学必须有别于专业学生。在计算机专业中,某些知识点就是一门课程,如可计算性理论。在大学计算机基础中,开展计算思维基础知识教学要注意:对三大科学思维、计算思维及其主要内容、计算思维的作用、冯·诺依曼计算机、存储程序等问题简明扼要地阐述清楚;停机问题、图灵猜想、可计算性问题、P&NP问题等本身没有答案,仅仅是像公理一样的命题,只需要简单举例提出并说清楚即可,不需展开。
②利用5周(10学时)讲授程序设计基本知识和训练算法基本功。让学生明白计算机抽象、自动执行的道理,掌握基本编程的能力。更有利的是学生根据各自情况,利用假期可更深入地自主学习程序设计内容,拓展第二课堂的学习渠道。
(3)实施问题驱动式的教学方法,从计算思维的角度来讲解计算机基础概念和原理知识。例如:通过展示计算机科学的最新成果,了解计算机能做什么。思考计算科学的两个基本问题:什么事计算机比人做得好,什么事人比计算机做得好?计算机有没有智能?从而培养计算思维意识。讲授操作系统基础时首先提出“车辆追尾问题所在?正常情况下公交车不来,责任在谁”等问题,说明操作系统解决此问题的方法和思想。又如Cache是一个预置和缓存问题,其思想是一个典型的计算思维案例。以前,可能仅仅讲解Cache起什么作用;从计算思维的角度来说,则需要讲解如何起作用。
2.程序设计课程
程序设计课程是计算思维教学的重点。尽管计算思维不仅仅是程序设计,但是计算思维最终需要程序设计去实现。程序设计课程包括三方面的内容:程序设计语言、算法和编程。程序设计语言和编程不属于计算思维的范畴;算法是关于解决问题的方法,是计算思维的内容。以往该课程由于学时少、内容多,学生在一个学期内学习思考的时间短,学生接受新事物的能力个体差异大,稍不留神有的学生就要跟不上步伐。现采用跨两个学期实施,有假期作为缓冲,在没有增加学时的情况下,实际使学生增加了学习、思考、自学、实践的时间。
我们在程序设计课程中强化计算思维教学主要需要进行四方面的工作。
(1)将程序设计课程的部分内容前置到大学计算机基础课程中。这部分内容约5周(10学时),主要包括:程序设计语言基础知识,结构化程序设计,算法的表示,简单算法的设计。
(2)从计算思维的角度出发,重组经典案例,将问题求解提升到计算思维的高度。
计算思维中问题求解的一般步骤为:
问题抽象化的描述,问题表示,即如何建立模型;
寻找解决方案,问题求解,即如何设计算法;
计算机实现过程、效率,即如何有效地求解、编码;
现实问题的延伸。
按照计算思维重组教学案例,让学生更能体会计算思维的本质,即抽象和自动化。
(3)引入应用程序开发。由于程序设计课程的部分内容前置到大学计算机基础课程中,腾出了10学时,可以开发一定规模的应用程序,提升了该课程的教学质量。对学习C/C++程序设计的理工类学生,要求完成一个应用性、综合性强的大作业,将数组、结构、链表、文件等有机地结合起来;对学习VB或C#的综合类学生,要求学生结合经典算法、图形技术、生活趣味问题或专业问题设计应用程序。目标都是引导学生探究问题求解的思路和方法,提高计算机素质。
(4)在教学方法上,尊重学生不同的认知方式,提倡算法的多样化。比较计算思维与传统思维解决问题的区别,倡导算法的简化和优化,从而培养计算思维。
3.“X”门应用课程
“X”门应用课程是计算思维教学的高层次,目的是培养学生利用计算机技术解决他们本专业中问题的能力,也是学校卓越人才培养要求落到实处的体现。可以说,任何一个应用程序或作品都是计算思维“物化”的结果。以计算学科基本问题为导向,以经典案例为基础,以项目开发为目的,以新技术新开发平台为载体,强化学科基础概念和基本原理的理解,着力提高学生的计算思维能力,一直是我们改革的目标和努力的方向。例如在“数据库技术及应用”、“多媒体技术及应用”、“软件开发技术基础”、“Web技术及应用”等课程建设和改革中,学生的计算机综合能力得到了很好的锻炼和提升。
在2011年秋季学期中,我们选择了2个班4个专业的学生在大学计算机基础教学中进行了计算思维教学探索。实践结果表明,学生的可塑性和潜力很大,既没有弱化“计算机软件的使用”,又引入了计算思维的教学和程序设计算法的训练,提升了该课程的内涵,改革得到学生的认可。当然计算思维工作要全面推开以及在后继课程中分类分层联动实施,工作量很大,面临着挑战。计算思维教学改革是一项系统工程,不是一件一蹴而就的事情,需要不断学习、研究、探索、实践和优化,任重而道远。
参考文献:
[1] 陈国良,董荣胜. 计算思维与大学计算机基础教育[J]. 中国大学教学,2011(1).
[2] 李廉. 计算思维——概念与挑战[J]. 中国大学教学,2012(1).
[3] 何钦铭,陆汉权,冯博琴. 计算机基础教学的核心任务是计算思维能力的培养[J]. 中国大学教学,2010(9).