论文部分内容阅读
【摘要】计算思维能力是计算机专业人才的最基本、最重要的能力之一。本文介绍了计算思维的基本概念,阐述了计算思维与计算机专业学生能力培养的关系与重要性,讨论了我们在培养学生的思维能力、应用能力、创新能力的一些思考与具体做法。通过开展有效的教学改革实践,达到提高学生计算思维能力、应用能力和创新能力的教学目的。
【关键词】计算思维 应用能力 创新能力 人才培养
【中图分类号】G64 【文献标识码】A 【文章编号】1009-9646(2008)09(a)-0135-02
1 前言
众所周知,计算思维(Computational thinking)能力是计算机专业人才的最基本、最重要的能力之一[1]。目前,我国高校的计算机科学与技术专业通常会先在课程体系中安排以数学分析为基础、以实数为主要运算对象的课程,接着安排以离散数学为代表的、以抽象集合及元素为运算对象的课程,希望能通过这些课程的学习来培养学生的计算思维能力。尽管计算机科学在本质上源自数学思维,它的形式化解析基础筑于数学之上,但是仅仅通过数学课程的学习来使学生弄清计算思维的基本概念和内涵是不够的,而且进程太慢。
对于刚刚进入大学进行专业学习的大学生来说,他们在中学阶段获得的计算机知识是有限的,没有专业的背景,并没有认识到计算思维能力对计算机专业学习和能力培养的重要性。如果我们能在一年级就帮助学生对整个计算机科学有一个整体的认知,处理理解计算机科学的概念、思想和基本方法,将有力于学生尽快完成从中学到大学学习方式方法的转变,有助于学业的完成。
因此,我们有必要从计算思维的角度向学生阐述计算机学科思想与方法论,使学生一开始对专业课程学习有一个比较准确的定位,对计算机科学的专业内涵和方法论有所了解,从而进一步明确学习的目标,培养自己良好的学风。
2 计算思维与计算机专业学习导论
J. M. Wing教授在《Computational Thinking(计算思维)》一文中指出[2]:计算思维是建立在计算过程的能力和限制之上的,不管这些过程是由人还是由机器执行的。计算方法和模型给了我们勇气去处理那些原本无法由任何个人独自完成的问题求解和系统设计。计算思维涉及运用计算机科学的基础概念去求解问题、设计系统和理解人类的行为,它涵盖了反映计算机科学之广泛性的一系列思维活动[2]。
从计算机发展的历史来看,目前的计算机已经成为适合于每一个人的“一种普遍的认识和一类普适的技能”[2]。一定程度上,这也意味着计算机科学从前沿高端到基础普及的转型[3]。
为了使计算机专业的学生一开始就能对专业的课程体系和知识体系有一个比较清晰的了解,我们必须给学生提供一门导引型课程,站在计算思维的高度和广度来论述计算机学科的基本概念、基本方法和发展趋势,讨论学科的内涵和本质,科学地为学生们进行正确的导学。
为此,针对初入大学的计算机专业学生,我们设置了“计算机科学导论”课程,并在课程的教学中坚持运用科学哲学的思想方法和高级科普的深刻定位[4],首先从科普的层面教育和帮助学生认知计算机科学与技术学科,对学生进行一次整体的专业学习“导游”,达到既“授人以鱼”,也要“授人以渔”的教学目的。
3 计算思维与学生能力的培养
3.1 计算思维与学生思维能力的培养
计算思维是人类求解问题的一条途径,它影响着我们的思维方式和思维习惯,从而也将深刻地影响着我们的思维能力。过去,人们都认为计算机科学家的思维就是用计算机去编程,这种认识是片面的。计算思维不仅仅是程序化的,而是在抽象的多个层次上进行思维[2]。人是个活体,具有丰富的想象力和创造力。利用计算机,人们可以用自己的智慧设计实现了各种各样的应用系统,解决了那些计算机诞生之前不敢尝试的问题,拓展了人类征服自然、改造自然的能力。
计算机科学与技术的方法论是对计算机领域认知和实践过程中的一般方法及其性质、特点、内在联系和变化发展进行系统研究的学问,是认知计算机科学的方法和工具,也是计算机科学认知科学的理论体系[5]。
我们通过在“计算机科学导论”课程从计算思维的角度来阐述计算机科学与技术方法论,可以有助于学生在学习专业的伊始就站在计算思维高度来看待专业的学习,注意培养自己严谨的抽象思维能力,使计算思维的精髓融入分析问题和解决问题的学习和实践过程中。这对培养学生的思维能力是非常有效的。
3.2 计算思维与学生应用能力的培养
计算机科学又从本质上源自工程思维,因为我们建造的是能够与实际世界互动的系统[2]。目前,计算机应用已经深入到各行各业,融入人类活动的整体,解决了大量计算时代之前不敢解决的问题。
然而,由于目前计算机能力的有限性,许多科学问题和工程应用问题依旧亟待解决。解决这些问题将会激起我们的好奇心和创造力。计算机学科就是在挑战问题、解决问题的过程不断得到发展的,计算思维能力也在分析问题和解决问题的实践当中得到充实和提高。
对计算机专业来说,实践是指计算机学科的设计过程,基础的技能是每位学生未来适应社会、为社会服务所必须掌握的。学生的应用能力一般是指编程能力和系统开发能力,它是要通过实验教学环节不断加深和加强。在这其中,不断拓展对计算思维的理解和认识是非常重要的。在这样的思维指导下,学校和教师可以为学生提供多样化的学习方式,使学生能在知识海洋里比较自主、自由地“航行”。例如,在计算机专业课程的学习中,教师可在给定范围后,让学生上机自由操作,支持和鼓励学生提出问题并自行解决问题,鼓励学生进行科技创业活动。这样做将有利于发挥学生的想象能力,培养学生的创造性思维。
为了培养学生的应用能力,我们贯彻了以学生为主体的教学理念,实行“边学习、边设计开发、边实践”的教育过程,在传授科学知识的同时,培养学生的系统开发实践、技术研究与认知能力,提高其综合素质。通过学习知识的过程,参与科技活动,培养了学生计算思维能力和应用开发能力,增强了学生可持续发展能力和认知能力。
3.3 计算思维与学生创新能力的培养
创新是一个民族生存、发展和进步的原动力。计算机科学与技术作为一门新兴的技术学科,知识和技术的创新显得尤为重要。在注重基础和应用能力的培养基础上,要培养学生的创新能力,必须注意加强学生知识融通与学习能力、迁移能力的培养,使学生在横向和纵向两个方向对所学专业有较好的宏观把握。
我们以为,计算思维能力的培养对计算机专业学生创新能力的培养是至关重要的。创新要靠科学素养和理解科学,靠科学的思想方法[4]。学生掌握了科学的思想,就能在今后的学习和生活中多层次、多视角、全方位地观察和理解客观世界的变化,运用已经掌握的知识和科学方法去理解事情、发现问题、提出问题、参与讨论、解决问题或找到解决问题的途径和方法。可以说,计算思维能力是计算机专业学生必备的科学素养之一,也是创新型人才应该必备的首要条件之一。
在培养学生的创新能力过程中,首先必须启发和培养学生的计算思维能力,使学生深刻地理解计算机科学与技术学科的方法论;然后在此基础上,把创新教育融入学生培养和教学活动中,培养学生在计算机科学领域的创造性,激励学生进行思想创新和技术创新,激发学生对计算机科学技术这一块神秘圣地的好奇心,以及培养怀疑精神和求异思维。另一方面,在教学过程中,应该主动为学生的学习活动设置符合学生计算思维能力和创新能力培养的教学内容,给学生们展开讨论和交流提供机会与场所,使学生积极主动地进行探索式学习,相互启发、相互鼓励,培养学生的创新意识。这就要求教师在教学内容的设计上要体现当代教育思想,讲课内容要新颖、有趣。例如,我们可以利用现有的教学条件,尽可能设置创新情景,使学生感到在一个真实的创新环境中,自己成为创新人员之一。也可以与一些有实力的科技开发公司合作,联合设置一些有利于学生开展科技开发和软件设计的学生创新实验室。这个创新环境应尽量与社会现实基本保持一致,这样有利于学生毕业后顺利地进入角色,开展创新活动。同时,作为一名专业教师,应主要体现一个“导”字,即正面启发诱导,侧面辅导,后面督导,通过精心的环境设计把学生带入主动探索、独立钻研、活化知识的境界。
4 结语
J. M. Wing在文献[2]中指出:当计算思维真正融入人类活动的整体以致不再是一种显式之哲学的时候,它就将成为现实。我们应该在培养计算机专业人才过程中,培养学生面向计算学科思维的能力,使学生真正理解计算学科的内涵和分析问题、解决问题的方法,而不是把人才的能力培养仅仅局限编程和系统设计开发上。
参考文献
[1] 蒋宗礼.以能力培养为导向,提高教育教学水平[C].大学计算机课程报告论坛论文集2007,北京:高等教育出版社,2007,p.24-29.
[2] J. M. Wing, Computational Thinking[J]. Communications of ACM,2006,49(3):33-35.
[3] 王飞跃.计算思维到计算文化.科学时报,2007.10.12.
[4] 赵致琢.计算科学导论[M].科学出版社,2005.
[5] 董荣胜,古天龙.计算机科学与技术方法论[M].北京:人民邮电出版社,2002.
【关键词】计算思维 应用能力 创新能力 人才培养
【中图分类号】G64 【文献标识码】A 【文章编号】1009-9646(2008)09(a)-0135-02
1 前言
众所周知,计算思维(Computational thinking)能力是计算机专业人才的最基本、最重要的能力之一[1]。目前,我国高校的计算机科学与技术专业通常会先在课程体系中安排以数学分析为基础、以实数为主要运算对象的课程,接着安排以离散数学为代表的、以抽象集合及元素为运算对象的课程,希望能通过这些课程的学习来培养学生的计算思维能力。尽管计算机科学在本质上源自数学思维,它的形式化解析基础筑于数学之上,但是仅仅通过数学课程的学习来使学生弄清计算思维的基本概念和内涵是不够的,而且进程太慢。
对于刚刚进入大学进行专业学习的大学生来说,他们在中学阶段获得的计算机知识是有限的,没有专业的背景,并没有认识到计算思维能力对计算机专业学习和能力培养的重要性。如果我们能在一年级就帮助学生对整个计算机科学有一个整体的认知,处理理解计算机科学的概念、思想和基本方法,将有力于学生尽快完成从中学到大学学习方式方法的转变,有助于学业的完成。
因此,我们有必要从计算思维的角度向学生阐述计算机学科思想与方法论,使学生一开始对专业课程学习有一个比较准确的定位,对计算机科学的专业内涵和方法论有所了解,从而进一步明确学习的目标,培养自己良好的学风。
2 计算思维与计算机专业学习导论
J. M. Wing教授在《Computational Thinking(计算思维)》一文中指出[2]:计算思维是建立在计算过程的能力和限制之上的,不管这些过程是由人还是由机器执行的。计算方法和模型给了我们勇气去处理那些原本无法由任何个人独自完成的问题求解和系统设计。计算思维涉及运用计算机科学的基础概念去求解问题、设计系统和理解人类的行为,它涵盖了反映计算机科学之广泛性的一系列思维活动[2]。
从计算机发展的历史来看,目前的计算机已经成为适合于每一个人的“一种普遍的认识和一类普适的技能”[2]。一定程度上,这也意味着计算机科学从前沿高端到基础普及的转型[3]。
为了使计算机专业的学生一开始就能对专业的课程体系和知识体系有一个比较清晰的了解,我们必须给学生提供一门导引型课程,站在计算思维的高度和广度来论述计算机学科的基本概念、基本方法和发展趋势,讨论学科的内涵和本质,科学地为学生们进行正确的导学。
为此,针对初入大学的计算机专业学生,我们设置了“计算机科学导论”课程,并在课程的教学中坚持运用科学哲学的思想方法和高级科普的深刻定位[4],首先从科普的层面教育和帮助学生认知计算机科学与技术学科,对学生进行一次整体的专业学习“导游”,达到既“授人以鱼”,也要“授人以渔”的教学目的。
3 计算思维与学生能力的培养
3.1 计算思维与学生思维能力的培养
计算思维是人类求解问题的一条途径,它影响着我们的思维方式和思维习惯,从而也将深刻地影响着我们的思维能力。过去,人们都认为计算机科学家的思维就是用计算机去编程,这种认识是片面的。计算思维不仅仅是程序化的,而是在抽象的多个层次上进行思维[2]。人是个活体,具有丰富的想象力和创造力。利用计算机,人们可以用自己的智慧设计实现了各种各样的应用系统,解决了那些计算机诞生之前不敢尝试的问题,拓展了人类征服自然、改造自然的能力。
计算机科学与技术的方法论是对计算机领域认知和实践过程中的一般方法及其性质、特点、内在联系和变化发展进行系统研究的学问,是认知计算机科学的方法和工具,也是计算机科学认知科学的理论体系[5]。
我们通过在“计算机科学导论”课程从计算思维的角度来阐述计算机科学与技术方法论,可以有助于学生在学习专业的伊始就站在计算思维高度来看待专业的学习,注意培养自己严谨的抽象思维能力,使计算思维的精髓融入分析问题和解决问题的学习和实践过程中。这对培养学生的思维能力是非常有效的。
3.2 计算思维与学生应用能力的培养
计算机科学又从本质上源自工程思维,因为我们建造的是能够与实际世界互动的系统[2]。目前,计算机应用已经深入到各行各业,融入人类活动的整体,解决了大量计算时代之前不敢解决的问题。
然而,由于目前计算机能力的有限性,许多科学问题和工程应用问题依旧亟待解决。解决这些问题将会激起我们的好奇心和创造力。计算机学科就是在挑战问题、解决问题的过程不断得到发展的,计算思维能力也在分析问题和解决问题的实践当中得到充实和提高。
对计算机专业来说,实践是指计算机学科的设计过程,基础的技能是每位学生未来适应社会、为社会服务所必须掌握的。学生的应用能力一般是指编程能力和系统开发能力,它是要通过实验教学环节不断加深和加强。在这其中,不断拓展对计算思维的理解和认识是非常重要的。在这样的思维指导下,学校和教师可以为学生提供多样化的学习方式,使学生能在知识海洋里比较自主、自由地“航行”。例如,在计算机专业课程的学习中,教师可在给定范围后,让学生上机自由操作,支持和鼓励学生提出问题并自行解决问题,鼓励学生进行科技创业活动。这样做将有利于发挥学生的想象能力,培养学生的创造性思维。
为了培养学生的应用能力,我们贯彻了以学生为主体的教学理念,实行“边学习、边设计开发、边实践”的教育过程,在传授科学知识的同时,培养学生的系统开发实践、技术研究与认知能力,提高其综合素质。通过学习知识的过程,参与科技活动,培养了学生计算思维能力和应用开发能力,增强了学生可持续发展能力和认知能力。
3.3 计算思维与学生创新能力的培养
创新是一个民族生存、发展和进步的原动力。计算机科学与技术作为一门新兴的技术学科,知识和技术的创新显得尤为重要。在注重基础和应用能力的培养基础上,要培养学生的创新能力,必须注意加强学生知识融通与学习能力、迁移能力的培养,使学生在横向和纵向两个方向对所学专业有较好的宏观把握。
我们以为,计算思维能力的培养对计算机专业学生创新能力的培养是至关重要的。创新要靠科学素养和理解科学,靠科学的思想方法[4]。学生掌握了科学的思想,就能在今后的学习和生活中多层次、多视角、全方位地观察和理解客观世界的变化,运用已经掌握的知识和科学方法去理解事情、发现问题、提出问题、参与讨论、解决问题或找到解决问题的途径和方法。可以说,计算思维能力是计算机专业学生必备的科学素养之一,也是创新型人才应该必备的首要条件之一。
在培养学生的创新能力过程中,首先必须启发和培养学生的计算思维能力,使学生深刻地理解计算机科学与技术学科的方法论;然后在此基础上,把创新教育融入学生培养和教学活动中,培养学生在计算机科学领域的创造性,激励学生进行思想创新和技术创新,激发学生对计算机科学技术这一块神秘圣地的好奇心,以及培养怀疑精神和求异思维。另一方面,在教学过程中,应该主动为学生的学习活动设置符合学生计算思维能力和创新能力培养的教学内容,给学生们展开讨论和交流提供机会与场所,使学生积极主动地进行探索式学习,相互启发、相互鼓励,培养学生的创新意识。这就要求教师在教学内容的设计上要体现当代教育思想,讲课内容要新颖、有趣。例如,我们可以利用现有的教学条件,尽可能设置创新情景,使学生感到在一个真实的创新环境中,自己成为创新人员之一。也可以与一些有实力的科技开发公司合作,联合设置一些有利于学生开展科技开发和软件设计的学生创新实验室。这个创新环境应尽量与社会现实基本保持一致,这样有利于学生毕业后顺利地进入角色,开展创新活动。同时,作为一名专业教师,应主要体现一个“导”字,即正面启发诱导,侧面辅导,后面督导,通过精心的环境设计把学生带入主动探索、独立钻研、活化知识的境界。
4 结语
J. M. Wing在文献[2]中指出:当计算思维真正融入人类活动的整体以致不再是一种显式之哲学的时候,它就将成为现实。我们应该在培养计算机专业人才过程中,培养学生面向计算学科思维的能力,使学生真正理解计算学科的内涵和分析问题、解决问题的方法,而不是把人才的能力培养仅仅局限编程和系统设计开发上。
参考文献
[1] 蒋宗礼.以能力培养为导向,提高教育教学水平[C].大学计算机课程报告论坛论文集2007,北京:高等教育出版社,2007,p.24-29.
[2] J. M. Wing, Computational Thinking[J]. Communications of ACM,2006,49(3):33-35.
[3] 王飞跃.计算思维到计算文化.科学时报,2007.10.12.
[4] 赵致琢.计算科学导论[M].科学出版社,2005.
[5] 董荣胜,古天龙.计算机科学与技术方法论[M].北京:人民邮电出版社,2002.