“大学计算机”-所有大学生都应学习的一门计算思维基础教育课程[J].pdf_第1页
“大学计算机”-所有大学生都应学习的一门计算思维基础教育课程[J].pdf_第2页
“大学计算机”-所有大学生都应学习的一门计算思维基础教育课程[J].pdf_第3页
“大学计算机”-所有大学生都应学习的一门计算思维基础教育课程[J].pdf_第4页
“大学计算机”-所有大学生都应学习的一门计算思维基础教育课程[J].pdf_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

中国大学教学2011年第4期15战德臣,哈尔滨工业大学计算机科学与技术学院教授;聂兰顺,哈尔滨工业大学计算机科学与技术学院副教授;徐晓飞,哈尔滨工业大学校长助理、计算机科学与技术学院院长、软件学院院长,教授。“大学计算机”所有大学生都应学习的一门计算思维基础教育课程战德臣聂兰顺徐晓飞摘要:当前,大学非计算机专业计算机课程存在知识型/技能型教学与未来计算能力需求之间的鸿沟,致使计算机教育存在危机。本文分析了这一危机产生的原因,提出应对危机跨越鸿沟的办法应是开展计算思维基础教育,分析了计算学科中的思维特别是可实现思维与知识、能力之间的关系,提出计算思维与计算能力的培养宜采取“1+X”模式,界定了作为“1”的“大学计算机”课程中计算思维的特征,据此对“大学计算机”课程进行了面向计算思维教学的内容重构讲授计算学科的普适思维(计算机的思维和应用计算机的思维)以及计算学科的基本素养,探讨了“大学计算机”课程的思维性教学方法。最后,简要介绍了上述教学改革在哈尔滨工业大学的实践及效果。关键词:计算思维;大学计算机;非计算机专业大学非计算机专业本科生的第一门计算机课程,在高校基础教育特别是计算机教育方面的重要性不言而喻。然而现实中,作为非计算机专业第一门计算机课程的计算机基础课程不仅没有受到重视,反而面临着严重的危机,普遍质疑此课程是否还有存在的必要。这种质疑不仅来自非计算机专业的学者,也来自计算机专业的学者。为什么会有这样的质疑?非计算机专业第一门计算机课程的核心价值是什么?非计算机专业第一门计算机课程及教学如何改革,以适应新的形势,应对上述危机?这些问题是每一个从事非计算机专业计算机教育工作者应重新思考的重大问题。本文基于作者在哈尔滨工业大学非计算机专业第一门计算机课程十多年的教学改革与实践,特别是自2009年课程面向计算思维教学的改革与实践,结合对上述问题的思考,探讨了非计算机专业第一门计算机课程的定位、教学内容重构、思维性教学方法等。一、大学非计算机专业第一门计算机课程的发展回顾非计算机专业第一门计算机课程自20世纪90年代中期普遍在大学中开设,被称为“计算机文化基础”,文化一词多少体现了基础性、思维性的内涵。然而随着执行过程中的偏差,文化的内涵越来越少,基础的内涵越来越大,课程逐渐演变为讲授计算机的基本概念以及常用/流行软件产品的使用。随后在20世纪90年代末期,很多学校便以“计算机应用基础”取而代之,这种改变不仅是名称的变化,更有以下几个显著的内涵上的变化:一是从计算机学科的多门课程和多种重要软件中提炼出共性知识单元进行教学;二是教学方式以任务驱动的形式开展,比如强调科技文章的排版素养而非排版软件、讲授程序的基本要素与程序设计思想而非流行的程序设计语言等;三是在课堂教学与实验教学之间进行了科学合理的分工,即课堂教学侧重共性知识的讲授,实验教学侧重流行软件产品的应用技能训练。现在大学非计算机专业第一门计算机课程已发展到新的阶段,应该将其开设成类似于大学数学、大学英语课程的、高等教育中不可缺少的独立课程,本文称其为“大学计算机”课程。这种改变,也不仅是课程名称上的变化,更在于课程内涵上的变化。当前,很多学者都强调,计算科学与理论科学和实验科学,并列成为推动人类文明进步和促进科技发展的三大手段。而作为计算科学基础的计算思维是大学生创新性思维培养的重要组成部分,因此“大学计算机”课程应强调计算思维基础教育,知识讲授与素养培养应贯穿于计算思维的教学中。二、大学非计算机专业第一门计算机课程面临的危机及其产生原因分析今天,随着计算机、网络的广泛和深度普及以及本科16新生计算机技能的不断提高,大学非计算机专业第一门计算机课程面临着严重的危机,受到来自非计算机专业学者和计算机专业学者的普遍质疑,危机和质疑的核心是该计算机课程存在的必要及其核心价值是什么呢?”危机和质疑是现象,而本质是现有教学模式在知识/技能的传授与未来计算思维/能力需求之间存在巨大的鸿沟。如图1所示。计算机及其通用计算手段的应用知识/技能当前的非计算机专业计算机教学关注点支持各学科研究创新的新型计算手段应用计算手段进行各学科研究和创新计算思维/计算能力非计算机专业学生的未来计算能力Gap图1知识/技能型教学与思维/能力需求间的空白当前的教学模式是一种知识型/技能型教学,关注点是计算机及其通用计算手段的应用,如二进制、微机原理、程序设计语言等。而非计算机专业学生未来对计算能力的需求则是支持各学科研究创新的新型计算手段,以及应用计算手段进行各学科的研究与创新。例如,开发辅助人们计算与分析的工具,将大量的数据聚集成库,实现信息表示数据采集数据输入计算分析可视化输出,人们可以利用这些工具去进行新药物、新材料等的研究和开发等。1998年的诺贝尔奖便授予一个专业计算手段的开发者:高斯(GAUSSIAN)软件的开发者波普(JohnPople)。现有的教学模式只能让学生获得知识和技能,但却无法跨越通用计算手段到各学科专业计算手段的鸿沟。而能跨越鸿沟的,作者认为应是基于通用计算手段的计算思维与计算能力。因此思维性基础教育应是改革的方向。客观地说,大学第一门计算机课程教学与能力需求间的差距,有教育者自身的原因,但也部分归因于其面临的诸多现实矛盾,下面简要分析之。一是科学型人才、工程型人才和应用型人才培养的矛盾。即是否因想要培养10%的优秀学生,而使其他90%的学生也一并加深理论的学习?是否计算思维就等于理论,就等于算法思维呢?是否因想要培养“应用技能”,而强调流行“产品”的应用和操作,认为应用技能不需要“计算思维”呢?作者认为上述问题的答案都应该是否定的。二是学生入学时计算机基础“较好”和“较差”之间的矛盾。基础较好的学生期望学得深入,基础较差的期望听懂课程内容。有必要思考学什么才能使所有的学生受益。三是“知识膨胀”与“学时数压缩”之间的矛盾。即计算机相关的新知识、新技术和新软件层出不穷,然而高校教学改革中“少讲多练”、“基础与专业”的平衡结果导致计算机课程的学时被不断压缩。如何合理地选择课程内容,如何科学、高效地讲解课程内容,值得我们思考。再进一步分析和探讨大学计算机课程危机产生的原因:(1)新技术、新软件对课程定位的影响。如果课程长期以讲“软件及应用”为主,软件的时效性等将影响人们对课程的定位和评价。(2)教师对“学生”接受程度的判断。讲思维学生是否接受不了,特别是对一些二类或三类本科院校?高考入学分数的差别是否代表着计算机相关知识学习和接受能力的差别?学习某些方面的知识,是否必须有另外一些知识作为基础?作者对上述问题的回答均是否定的。(3)教师对大学第一门计算机课程核心内容的认知。这种认知与非计算机专业的专业教师期望的是否一致?所选择的内容是否就是课程应该讲的内容呢?(4)大学第一门计算机课程是否是各门计算机课程的“前沿性”章节。大学计算机是否是“微机原理”?大学计算机是否是“大学信息技术基础”?大学计算机是否是“计算机科学基础(算法与计算理论)”?作者的回答也是否定的。(5)如何由知识传授转为基于知识的思维传授。思维性教学已被提倡了很久,为什么没有很好地落实下去?思维性教学落实与执行的合适手段是怎样的?(6)对“思维”、“知识”的理解影响了课程的定位。比如,“讲思维等同于讲理论、讲理论不实用,技能与操作才是实用的东西”,这种观点对吗?再比如,注重所讲授内容知识性的教学方法却引发了对知识的有用性质疑这些“知识”必须讲吗?面对危机和质疑,非计算机专业大学计算机课程教育工作者有必要重新思考课程的定位、方向等重大问题:(1)大学第一门计算机课程的核心价值是什么;(2)面向各个专业的大学计算机教育如何与各专业结合;(3)计算思维是什么?如何培养?计算能力如何培养,并据此开展课程的教学改革与创新。三、知识与思维、可实现的思维基于对课程面临的矛盾和危机产生的原因分析,作者认为,由“计算机应用基础”提升为“大学计算机”不仅是课程名称的变化,更需要在深层次上改革其教学内容和教学方法。“大学计算机”课程必须强化思维性教学改革,强调计算思维特别是可实现思维的教授和培养,17以思维带知识。下面以例子来说明思维与知识的关系,以及大学计算机课程中的典型思维。1典型的思维、可实现的思维以计算机中的二进制和编码为例,如果单纯从知识角度,这些内容可以讲授也可以不讲授。而换一种角度来看,从“0和1的思维”角度进行讲授是有价值的:现实世界可以表示为0和1用0和1可进行逻辑与算术运算0和1可以用电子技术实现用二极管、三极管等实现基本门电路组合逻辑电路实现芯片(复杂组合逻辑电路)。具体来说,0和1的思维蕴含着:(1)信息表示。数值信息和非数值信息均可用0和1表示,均能够被计算。(2)符号化数字化。物理世界/语义信息符号化0和1(进位制与编码)数字计算(算术运算,逻辑运算)硬件与软件实现。即任何事物只要能表示成信息,也就能够表示成0和1,也就能够被计算,也就能够被计算机所处理。(3)层次化构造化。硬件系统是“用正确的、低复杂度的电路组合形成高复杂度的芯片,逐渐组合、功能越来越强”。那么,复杂的软件和复杂的系统是否也可借鉴这种思维呢?从上例中不难看出,大学计算机课程思维性教学的特点是:讲授的是实现的思维而非实现的细节;讲授可见、可实现的思维而非抽象的思维;思维的每一个环节都需要知识,基于一定的知识可理解每一个环节,通过贯通进而理解整个思维;知识贯穿于思维的讲解与训练中。再比如计算机利用键盘输入、利用显示器显示内容作为输出,这一内容作为“知识”因其直观而简单不一定需要学习,然而作为“思维”则值得学习。以键盘输入与屏幕显示为例可以讲授“信息处理的思维”,即:位置电信号编码存取/ASCII解码字形显示,如图2所示。学生掌握这一思维之后,可以很容易地推广至其他语言文字的处理,如汉字等。图2键盘输入与屏幕显示思维示意更进一步,这一例子蕴含着一种普适的思维信息处理思维,即:物理对象通过采集设备采集相关信息(物理信息映射),然后按一定的编码规则使用编码器进行编码及存储,再按编码规则使用解码器进行解码,识别所需信息并进行显示。如图3所示。那么,声音、视频等多媒体信息以及各种新型设备如RFID(即射频识别,俗称电子标签)等的处理是否可以利用这种思维进行处理?图3信息表示与处理思维示意2大学计算机课程需要思维性教学改革计算机学科中有很多类似于上述思维的普适思维,这些思维不仅反映了计算、计算机的原理,使非计算机专业学生能够深刻地理解,更重要的是体现了基于计算技术/计算机的问题求解思路与方法,从而有助于培养非计算机专业学生的创新能力,为未来应用计算手段进行学科的研究与创新奠定坚实的基础。如借鉴计算机及相关系统,研制支持生物技术研究的计算平台,研究支持材料技术研究的计算平台等,典型的例子如前所述的高斯(GAUSSIAN)软件。因此,非计算机专业大学计算机课程应该也必须挖掘这样的思维,培养学生使之具有“思维”,更要使学生“看见”并确立“思维”是能够实现的。因此,大学计算机课程要实现思维性教学改革,不仅要讲知识,更要讲贯通这些知识的思维,不仅要讲思维,更要讲思维是可实现的。蕴含在计算机学科知识当中的、建立在可实现基础上的思维教学是“大学计算机”课程的核心价值。思维性教学的理念则可概括为“知识随着思维的讲解而展开,思维随着知识的贯通而形成,能力随着思维的理解和训练而提高”。近年来,计算思维的培养成为国际和国内的热点。Wing教授明确提出“计算思维能力将成为21世纪中叶每个人的基本能力”。2010年九校联盟(C9)计算机基础教学发展战略联合声明的核心要点也强调“需要把培养学生的计算思维能力作为计算机基础教学的核心任务”。编译器/解码器/解析器/执行器/生成器/变换器编码器按协议/标准表示的信息(物理对象的)语义绑定方法(物理对象的)信息采集(物理对象的)协议/标准信息显示/打印传输交换外设处理(目标位置)目标格式的信息解码器:读取文件,8位分隔一个字符,将8位ASC码转换成字符字型码送显示器显示编码器:将符号转换成ASC码存储/8位一个字符信息:ASC码0/1存储的文件(.Txt)8位0/1码绑定语义,一个字母或数字信息采集:键盘(通过按键位置识别出所按的符号)信息表示规范/标准:ASC码信息显示/打印18非计算机专业大学生计算思维能力的培养是一个系统工程,宜采取分层次的“1+X”模式。如图4所示。图4非计算机专业大学生计算思维、能力的培养体系第一层次是“1”,即“大学计算机”课程。该课程采用思维性教学方式,一方面使非计算机专业学生掌握一定的计算机知识,另一方面使其建立对基本计算思维的理解。第二层次是算法与高级语言程序设计课程和数字电路与汇编语言程序设计课程。主要负责问题求解能力的训练,通过训练这一必要手段达到思维向能力的提升和转变。第三层次是计算机专业类课程和各专业的计算机相关课程。其侧重点是在具备计算思维和计算能力的基础上,与各专业深度结合,形成面向各专业的计算思维和计算能力。3“大学计算机”课程中计算思维的特征“大学计算机”课程作为非计算机专业大学生计算思维能力培养体系中的“1”,有其基础性、关键性和特殊性,因而应侧重培养具有如下特征的计算思维:(1)基于通用计算平台的思维。计算机是如何工作的,程序在计算机中是如何被执行的等等,蕴涵在计算平台中的基本思维对于计算思维的培养具有重要的作用。(2)从多门课程中凝练出的共性思维。对非计算机专业,由于受限于学时数,应将蕴涵在不同课程,如操作系统、数据库、计算机网络等课程中的具有普适意义的计算思维凝练出来。(3)将不同方面的知识贯通起来所形成的贯通性的思维。打通知识间的屏障(如术语上的差异、抽象的不同层面等),对于提高计算思维能力很重要。(4)可实现的,但非细节的思维。使同学既理解计算思维,又感觉这种思维是可以实现的,但又不是实现的具体细节,而是这种实现的思维。(5)为各学科计算手段的研发或应用奠定基础的思维。如关于问题求解算法的思维、关于计算平台设计的思维、关于应用新型计算平台的思维等。四、“大学计算机”的思维性与课程定位作为非计算机专业大学计算机课程中的第一门课,作为计算思维/能力培养体系中的“1”,“大学计算机”课程应该具有以下特点:思维性。计算学科的普适思维对各学科学生的创新性培养是重要的,复合性、创新性人才离不开计算学科的手段,计算学科的普适思维包括计算机的思维和应用计算机的思维。大学计算机课程要培养这些普适性的思维。素养性与知识性。一定的知识与素养是理解并建立起“思维”的必要条件,知识主要是与思维相关的知识,素养主要是信息与信息处理方面的素养。“大学计算机”课程要将思维、知识与素养有机结合。技能性与实用性。“大学计算机”课程要培养学生应用计算机的技能,这是一种能够利用计算机进行业务工作的能力,而非掌握一种或几种软件和技能的培养。建议专设“大学计算机实验”课程解决。作者基于多年的教学实践和思考,总结了“大学计算机”课程应该讲授的思维、应该培养的素养,限于篇幅,这里只给出清单。1有关计算机的思维(1)计算机技术发展路线图蕴含的思维;(2)关于0和1的思维;(3)关于程序、指令及其执行的思维;(4)关于计算机系统的思维;(5)关于操作系统的思维;(6)计算机语言发展路线图蕴含的思维(语言与编译器);(7)关于互联网计算的思维(协议与执行器及分层)。2应用计算机的思维(1)关于信息处理的普适思维(协议、编码器与解码器、分层处理、分离处理的思维等);(2)关于算法类问题求解的思维框架;(3)关于系统类问题求解的思维框架;(4)关于数据库的思维(聚合信息成库、基于数据库的信息处理与分析);(5)关于互联网应用的思维(信息搜索、发布、虚拟世界与现实世界的交互)。3计算学科的素养(1)计算机基本应用素养;(2)程序设计与算法的基本素养;大学计算机各专业计算类相关课程计算机专业类课程算法与高级语言程序设计数字电路与汇编语言程序设计专业结合问题求解能力的训练基本思维的理解能力思维知识19(3)文章编排的基本素养;(4)信息搜索与信息发布的基本素养;(5)信息安全的基本素养。综上,“大学计算机”课程定位于非计算机专业大学生计算机教育的第一门课程,着力于培养学生的计算思维及信息素养,是一种基础性、素养性课程,而不是流行软件产品的使用培训课程。课程从思维而非细节的角度,使学生对计算机本身及其应用方式有一个全面的了解和理解,为其今后的创新活动打下坚实的基础。五、“大学计算机”的教学内容设计在厘清了“大学计算机”课程的核心价值、特征与定位之后,从思维性教学的角度给出“大学计算机”课程的教学内容设计。课堂教学内容的设计基于两个出发点:一是计算思维及其牵引的相关知识和基本素养,二是计算机系统(硬件系统/软件系统/网络系统/数据库系统等)及其应用。如图5所示。图5“大学计算机”课程内容的重构课程分为9个教学单元,即引论、计算原理、操作系统基础、问题求解框架、算法描述与程序设计基础、互联网计算基础、数据库系统基础、科技文章/文稿电子化制作及编排与发布、计算机安全与信息安全。建议学时为30(必选)+14(可选),覆盖了计算思维(思维牵引的知识)讲授和基本素养的培养两个方面。如问题求解框架单元讲授算法类问题求解的思维和系统类问题求解的思维;算法描述与程序设计基础单元讲授程序设计语言的基本知识、算法设计与程序设计的基本知识,训练学生程序设计的思维,培养程序设计与算法的基本素养。实验内容相对独立,自成系统,包含13个单元,如认识和熟悉计算机、操作系统的基本应用、常用外部设备的安装与应用、科技文章的编排、信息检索、信息发布、算法与程序设计、数据库系统语言SQL的应用等。每个实验单元包含45个实验项目,深度、难度分级,从而更好地面向具有不同应用基础的学生。建议学时为27(必选)+13(可选)。通过实验教学,学生熟悉计算机硬件及组成、熟悉软件与网络的操作与使用,获取日常学习与工作的基本技能。六、“大学计算机”的教学方法针对“大学计算机”课程的内容设计,以下给出几个思维性教学方法的案例。以“关于计算机系统的思维”讲授为例,以现代计算机系统为中心,贯穿存储体系、操作系统、高级语言源程序、机器语言程序、冯诺依曼结构等知识点。讲解源程序机器语言程序磁盘上的程序“文件”内存中的“进程”冯诺依曼机器模拟执行“进程”操作系统对资源的管理与控制。讲解思路如图6所示。图6以现代计算机系统为中心的知识贯穿在讲授算法类问题求解的思维和系统类问题求解时,因其较为抽象,且涉及知识点较多,宜采取实例化、示例化阐释一般性的思维方式和抽象概念。如算法类问题求解可以旅行商问题(TSP)作为贯穿求解过程/框架的实例,如图7所示。“大学计算机”思维性教学方法还要注重将“不可见”变为“可见”,变无关为相关,复杂问题的分离与分层处理等,限于篇幅,不再一一举例。最后,在讲授“大学计算机”课程时,宜与所面向的学科专业进一步结合,通过合适的、面向不同学科专业的实例达到既阐释计算学科的普适思维,又给出面向特定学科专业的范例的教学效果。自2009年开始,哈尔滨工业大学面向2009级非计计算机系统(硬件系统/软件系统/网络系统/数据库系统)及其应用计算机思维及其牵引的相关知识和基本素养教学单元9:计算机安全与信息安全教学单元8:科技文章/文稿电子化制作及编排与发布教学单元7:数据库系统基础教学单元1:引论教学单元2:计算原理教学单元3:操作系统基础教学单元4:问题求解框架教学单元5:算法描述与程序设计基础教学单元6:互联网计算基础操作系统控制文件的读取可运行程序文件外存储器操作系统控制内存的分配、程序的装载与进程的执行和关闭源程序文件磁盘上的程序“文件”源程序可运行程序编译运算器控制器CP

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论