随着“计算思维”概念的提出,“计算思维”已不仅仅属于计算机科学家,而应是每个人需具备的能力,计算思维是运用计算机科学的基本概念去解决问题、设计系统和理解人类的行为。C语言程序设计是计算机专业一门重点必修课程,但目前的教学还是采用“老师主讲,学生跟着学”这一模式,教师先讲解概念,语法,再举例,最后安排学生练习。学生最后只能应付考试,根本不能将所学知识应用到生活中解决问题。所以,教师需在教学中不断尝试新的教学方法,认真分析需要解决的问题,并将教学案例与“计算思维”结合起来,从而逐步引导学生掌握运用计算思维分析问题,解决问题的方法[1]。
在教学过程中,教师可引导学生感受计算机分析问题以及解决问题的过程,思维模式和基本方法。在教学程序设计时,教师应引导学生明确这门课程的目标不仅仅是学习程序设计语言本身,更是通过程序设计来探索计算机分析问题以及解决问题的思路,即学会如何将实际生活中的问题转化为计算机可以解决的问题,从而思考如何利用计算机求解。在以后的学习过程中,我们应更加注重“计算思维”的培养。
掌握计算机求解问题的各种方法,是培养学生计算思维的关键。在提出问题后,教师可让学生思考以下几个方面:(1)已知的信息有哪些,如何将这些已知的信息转化为计算机可以识别的信息;(2)希望得到什么样的结果,如何根据已知的信息得到结果(即算法);(3)将算法以流程图的形式表示出来[2]。从而得出运用计算思维解决问题的一般步骤:(1)问题的描述;(2)解决问题的算法(流程图);(3)代码的编写;(4)程序的调试。教师应让学生明确一点,计算机之所以能完成我们给定的任务,是因为我们教会了它如何做,如何一步步达到我们想要的结果。[3]
1计算思维在理论教学中的应用
C语言程序设计课程是程序设计中的入门课程,是学生学习程序设计的基础,同时,也是教会学生用计算机来解决问题的入手点,肩负着多重任务,很多同行对“计算思维”的研究,大多都侧重实践的研究,对于入门的程序设计语言来讲,C语言的理论基础同样重要,教师不仅仅要讲算法,还需要讲清楚语法,对于新入门的学生来讲,掌握好语法,可以大大减少学生在编程过程中出现错误。笔者回顾这几年对C语言程序设计的教学过程,发现对于刚学习程序设计的学生来讲,如果对语法不熟悉,在编程的过程中,就会出现各种错误,大部分学生因为经常出错,从而对这门课程产生畏惧感,渐渐地学生也会对这门课程失去兴趣,在整个学习过程中,真正能学好的学生并不多。所以,在学习初期,对语法的讲解就显得非常重要。
如何理解数据类型以及变量呢?
加强对语法的教学,并不是简单地加大理论课的课时量,而是通过“计算思维”,利用启发式教学,让学生知其然,也知其所以然。例如,在教学语法的时候,对于数据类型的教学可以通过提问的方式进行。如,说到数据,大家想到哪些?让学生自己展开联想,他们很容易想到数字以及文本。将数字分类,就是整数和小数了。要让计算机为我们工作,首先要告诉计算机是对什么样的数据进行工作,所以,需先区分数据的种类,同时,为了让计算机更好地分辨数据的种类,再给这些数据类型取一个计算机可以识别的名字,如int,即告诉计算机Itisainteger。让学生理解为什么要这样做,学生在编写代码的时候就不会死记硬背了。如,再提问,如何让计算机完成两个整数的乘法操作?答案当然是写一个程序,接着问:具体应该如何写呢?是不是像写文章一样,什么字都可以往里面写呢?显然答案是否定的。那怎么告诉计算机要对两个整数进行相加呢?用刚才的数据类型可以解决这个问题,那么相加的结果又要放在哪里呢?所以,从这里又可以引入“标识符”的概念。为什么书上说:标识符不能以数字开头,例如,“3b”这种形式呢?这与我们的日常生活习惯有关。
为什么“int”不能作为标识符?因为在C语言中“int”代表一个整数,计算机读到“int”的时候,就会自动识别为它是一个整型。所以“int”不能再用作其他用途。让学生了解当中的“为什么”,可以避免学生陷入死记硬背的误区,同时帮助他们深刻地理解“计算思维”的?C械性及确定性的特征。
2计算思维在实践教学中的应用
“计算思维”中的“计算”是广义的计算。随着信息化的全面推进,“计算机”无处不在,网络(包括物联网等)也延伸到了各个角落,加上数据积累的简单化、容易化,使“计算思维”成为人们认识和解决问题的重要方式之一[6]。“计算思维”是一个将复杂问题步骤化的过程。而C语言是一种面向过程的语言,在进行C语言编程的过程中,可以将“计算思维”融入其中。以下为设计程序调试的案例:实践是提高学生编程能力的主要手段,在理论教学的过程中,虽然教师多次提醒学生需要注意细节,但学生在动手编程的过程中,更容易在细节中出错,从而导致学生对这门课程产生抵触心理。为了让学生深刻理解C语言程序的特点,教师可以提供程序代码,将学生容易犯的错误通过程序进行展示。让学生通过调试找出其中的错误,使学生自主发现自己编写的程序中的错误,进而提高他们编写代码的能力。
2.1模仿教师教学案例
在给学生讲解案例的时候,教师可以先提出问题,让学生有个思考的过程,例如,在讲解“枚举法”的时候,教师可以先提出问题,让学生求“水仙花数”。水仙花数是一个三位数,这个数需满足条件:个位的立方+十位的立方+百位的立方=这个数本身。先进行分析,如何确定水仙花数的范围,如何提取数的个位,十位,百位,让学生学会将问题细化,以达到解决问题的目的。讲完这个案例,我们可以让学生完成诸如“百钱买百鸡”问题,同样是先学会分析,将问题步骤化,然后再让学生将解决问题的算法以流程的方式画在纸上,再将算法转换为程序代码,最后进行调试,用这种方法可以迫使学生用计算思维进行思考,掌握计算机解决问题的方法和思路。
2.2问题求解
问题求解是对所学知识的灵活应用,例如,在学完数组以及函数后,可以通过编程求解“农夫过河问题”,重点要求学生按问题的求解步骤完成,即包括问题的描述、求解的算法过程(流程图)、代码的编写、代码的调试。通过对问题进行求解,可以引导学生经历运用计算思维解决问题的思考过程,以及对所学知识的巩固,同时提高了学生分析问题以及解决问题的能力。
2.3综合应用
随着计算机在各个领域的广泛应用,计算思维也受到了广大师生的重视,引入计算思维也是为了提高课程的教学质量,让学生学以致用。当课程接近尾声时,学生能够用C语言编写一些简单的应用,如“数码游戏”“日历系统”等。这样,不仅能将所学的知识融会贯通,还可以在编写的时候对算法的效率,用户界面的友好性提出要求。这样,更有助于学生对算法进行深入探究,更好地掌握求解的思路及方法,提高学生对计算机的应用能力。
关键词:多维度协同;计算机基础;分层教学;案例教学
随着全社会信息技术的不断普及和深化,中小学计算机教育随之发展,大多数学生在上大学前就掌握了一定的计算机知识,且计算机应用水平逐年提高。但是,由于我国信息化进程存在明显的地域性差异,不同地区中小学计算机教育水平差别较大,大一的学生入校时计算机基础知识的掌握程度参差不齐,两极分化十分严重。一些来自计算机教育水平较高地区的学生,计算机基础知识掌握较好,甚至有的学过程序设计语言,还有一些来自农村或偏远地区的学生,没有上过计算机相关课程,有的甚至几乎没有使用过计算机。
如何使基础不同的学生乐于学习并有收获,是计算机教学过程中面临的巨大挑战。学生对计算机知识掌握程度不同,给教学的组织带来困难。若实施统一授课,将势必出现一部分同学“吃不饱”,而另一部分同学“吃不了”的现象。
大学计算机基础课程是非计算机专业学生的入门公共基础课,如何从课程内容特点、学生的计算机水平、学生的专业特点等多维度研究和改进计算机基础课程的教学内容和教学方法显得越来越迫切。
1.多维度协同下计算机基础课程分层改革
多年来,我们一直致力于计算机基础教学的改革。2008、2009年我们曾对入学新生进行计算机水平测试,成绩优秀者可申请课程免修,但是由于对成绩优秀者进人大学后计算机水平的进一步提高缺乏有效的措施,试行一段时间后取消。近几年,我校计算机基础教学改革一直在不断推进,从教材建设、教学网络资源建设、课程全程录像、微课建设等多个方面对课程进行改革。
2014年以来,为了更好地组织分层教学,我们开展了系统的计算机基础分层教学改革,通过对课程设置、课程的理论教学内容、实验教学内容等多维度协同进行系统的分层教学改革与实践。
1.1课程设置分层改革
针对学生入学时的计算机应用水平参差不齐的现状,要平衡这种差异,我们采用了分层教学的方法。对大学计算机基础课的课程设置进行了改革,由原来所有新生开设同样一门课程,教授同样内容,改革为开设两门课程,这两门课分别为:计算机信息技术Ⅰ和计算机信息技术Ⅱ两门课,同时对两门课的内容进行了规划和整合。每个学生根据入学后分班考试的成绩自愿选修其中一门课程。
1.2课程教学内容分层改革
计算机基础课程的教学内容主要分理论和实践两个方面,理论部分主要让学生了解计算机的基础知识和基本原理;应用部分主要学习计算机的基本操作、office系列软件的操作。理论和应用分别使用不同的教材。
在教学过程中要取得良好的教学效果,教材的重要性毋庸置疑,教材决定了教学的主要内容,引领学生的思维方向。结合多年的教学经验,我们经过认真的研究、分析与准备,编写了1套共3本适合我校分层计算机基础课程教学特点的教材。
计算机信息技术Ⅰ和计算机信息技术Ⅱ两门课的理论教材均使用我校教师自编教材。是由李海燕等主编的《大学计算机基础》教材。该教材共分为9章,包含计算机概述、计算机硬件系统、计算机软件系统、程序设计基础、数据结构、计算机网络与通信、多媒体及应用、数据库设计基础、信息系统基础。根据各专业学生的特点采用4+X的分层教学模式。4是指计算机概述、计算机硬件系统、计算机软件系统、计算机网络与通信这4章的内容,x是指根据各专业特点选讲其他几章的部分内容。
计算机信息技术I课程的实验教材采用我校教师自编教材,是由蒋银珍等主编《大学计算机基础应用案例教程》。该教材内容分为8章,包含Windows7、Word、Excel、PowerPoint、WPS文字软件、WPS表格软件、WPS演示软件、图像处理软件Photoshop。根据各专业学生的特点以及学生的计算机水平采用4+X的分层教学模式,4是Windows7、Word、Excel、PowerPoint这4个软件,对于基础较差的学生只需掌握这4个软件的使用,x是指对于基础较好的学生选择掌握其他几个软件的应用。
计算机信息技术Ⅱ课程的实验教材采用我校教师自编教材,是由沈玮等主编《Office高级应用案例教程》。该教材内容分为5章,内容包含Word、Excel、PowerPoint、VBA基础知识及在Office软件中的应用、Access。
2.多维度协同下开展学生分层教学
课程设置和课程教学内容设计完成后,对入学新生进行分班考试。考试前由学生处、教务处、计算机基础教学部联合通过微信公众号、教学网站、辅导员开班会等途径分班考试的通知。通知中重点向学生强调分班考试的目的,分班考试的出发点是为了更好地因材施教,分班考试遵循以人为本、强调自愿,不搞一刀切,鼓励每个学生都参加分班考试。
分班考试时间安排在新生军训期间的晚上进行,由计算机基础教学部安排各专业学生的具体考试时间。考试采用网络考试形式,利用学院计算机基础教学部的计算机公共教学网络平台对学生的计算机理论和应用水平进行测试,准确把握学生的计算机应用能力,为分层教学改革提供依据。测试内容包括计算机概述、计算机硬件系统、计算机软件系统、计算机网络与通信、多媒体及应用等计算机理论知识以及Windows7、Word、Excel、PowerPoint等软件的应用能力。
分班考试结束,根据每位学生的分班考试成绩,通过计算机公共教学网络平台的留言信箱功能对每位学生提出课程选修建议,对于考试成绩优秀的学生建议选修计算机信息技术Ⅱ。对于考试成绩一般和不参加分班考试的学生只能选修计算机信息技术Ⅰ。分班考成绩优秀的学生根据选修课程建议自愿选择计算机信息技术Ⅰ或者计算机信息技术Ⅱ课程。
我校自2015年开始实施分层计算机基础课程教学,到目前为止已经实施了2年。2015、2016年分别在分班考试成绩优秀的学生中开设了5个班计算机信息技术Ⅱ课程,每个班人数基本为80-110之间。从学生的考试情况以及学生的反应以及各院系反馈意见看,课程改革初步取得了良好的效果,收到学生和开课院系的肯定。选修计算机信息技术Ⅱ的学生们普遍反映学到了更多的知识,掌握了许多实用的技能。而选修计算机信息技术Ⅰ课程的部分计算机基础较差的学生也能快速掌握计算机基本知识和基本原理,提高了计算机应用水平。从而解决了部分同学“吃不饱”,而另一部分同学“吃不了”的问题。
3.多维度协同下实验分层案例教学
为了增强实验教学的趣味性和实用性,计算机信息技术Ⅰ和计算机信息技术Ⅱ两门课均采用了案例教学的方法。
3.1计算机信息技术Ⅰ案例教学
计算机信息技术Ⅰ实验教学主要注重让学生学会文字处理软件、表格处理软件、演示文稿制作软件的基本应用能力,强调弱化软件的类型、具体版本等与具体软件相关的内容,注重同一类软件操作能力的培养。
计算机信息技术Ⅰ精选了20个案例,16个综合练习,把MSoffice的3个软件Word、Excel、PowerPoint软件和WPSoffice的3个软件WPS文字软件、WPS表格软件、WPS演示软件操作需要掌握的知识点融汇到一个个实用的案例中。
下面具体介绍一下Word部分安排的3个案例。
第1个案例为制作电子小报。本应用案例要求使用Word2010制作一份图文并茂的电子小报,本案例涉及的主要操作包括:1)文档编辑;2)文档修饰;3)插入艺术字;4)插入图片;5)插入文本框;6)边框底纹;7)项目符号;8)分栏等。
第2个案例为制作个人简历。本应用案例使用Word2010制作一份基于表格的个人简历,涉及的主要操作包括:1)新建和保存文档;2)水印设置;3)艺术字的使用;4)文本框的使用;5)页面边框的使用;6)新建表格和选定表格;7)合并与拆分单元格;8)表格内文字的设置;9)表格格式的设置;(10)在单元格中插入图片。
第3个案例为论文排版。本应用案例使用Word2010对给定论文材料进行排版,主要训练学生长文档的编辑方法。涉及的主要操作包括:1)页面设置;2)分页;3)封面排版;4)摘要排版;5)正文排版;6)标题排版;7);生成目录;8)插图排版;9)表格排版;10)页眉和页脚等。
3.2计算机信息技术Ⅱ案例教学
计算机信息技术Ⅱ主要让学生学会文字处理软件、表格处理软件、演示文稿制作软件的高级应用能力,强调弱化软件的类型、具体版本,注重软件操作能力的培养。要求掌握Word、Excel、PowerPoila中的高级应用,VBA在Word,Excel、PowerPoira中的基本应用,另外学会数据库应用软件Access的基本应用。
计算机信息技术Ⅱ精选了14个案例以及2个综合练习。这些案例中有大型综合性案例,也有小的的应用型案例。这些案例中有关VBA在office中的应用案例为本课程的特色。通过5个应用案例,简单明了地介绍了VBA在Word,Excel、PowerPoint中的基本应用,也是对VBA教学的一种创新尝试。
下面具体介绍一下VBA在Excel中应用的一个综合案例。
1)案例目标
修改“期末成绩表.xlsx”工作簿,使用VBA程序对工作表进行格式设置,对工作表中的数据进行计算,实现动态分配班级的功能,并在打开该工作簿时进行用户合法性验证。
2)知识点
本案例涉及的主要知识点包括:
(1)工作簿对象及其属性、方法及事件;
(2)工作表对象及其属性、方法及事件;
(3)单元格对象及其属性、方法及事件;
(4)变量的使用;
(5)分支语句;
(6)循环语句;
(7)用户窗体。
4.结语
关键词:数值计算方法;创新意识;计算平台
作者简介:张俊丽(1980-),女,山东菏泽人,内蒙古民族大学数学学院,讲师。(内蒙古?通辽?028000)
中图分类号:G642.0?????文献标识码:A?????文章编号:1007-0079(2012)28-0087-01
随着科技的飞速发展和计算机技术的广泛应用,数值计算方法已成为重要的桥梁和工具深入到航天航空、地质勘探、汽车制造、桥梁设计、天气预报等各个领域,成为每一位科研人员和工程技术人员所必备的知识。为了满足社会需求,数值计算方法现已成为高等院校理工类学生的一门专业必修课程,其目的是让学生掌握设计数值算法的基本方法,培养学生分析问题与解决问题的能力,为以后用计算机解决科学计算问题打下坚实的基础。
一、“数值计算方法”课程的特点与教学现状
数值计算方法,简称计算方法,又叫数值分析,是一门研究数学问题的近似解并利用计算机进行数值实现的学科,是数学分析、高等数学、高等代数、概率统计等数学基础课的后续课程,它既有数学理论上的抽象性与严谨性,又有实验性与应用性的数值特征。计算方法课程的内容包括插值和拟合、数值微分和数值积分、求解线性方程组的数值方法(直接法和迭代法)、非线性方程数值解、矩阵特征值计算及常微分方程初值问题数值解法等;[2]它的计算对象是数学中的微积分、线性代数、常微分方程,只是它不像别的数学课程那样只是研究纯粹的数学理论,而是把数学理论与计算相结合,重点探讨数学问题的数值解法及应用;它的课程要求是在掌握算法原理的前提下设计算法编程实现。
“数值计算方法”是一门介绍科学计算的核心理论和基本方法的数学课程,它对培养学生的科学计算能力和解决实际问题的能力具有不可替代的作用。从20世纪80年代起,“数值计算方法”相继成为各高等院校数学及其他理工科(如物理、计算机等)专业本科生的一门专业基础课。但内蒙古民族大学(以下简称“我校”)的数值计算方法课程只在应用数学、信息与计算科学两个专业开设必修课,一般开设在第三或第四学期,理论课48学时,上机实验16学时,在别的学院(如物理、计算机等)没有开设该课程。该课程普遍存在的教学现状是:理论课内容多,学时少,各部分内容不连贯,公式繁多,枯燥乏味,使得学生产生厌学情绪;上机课时间紧,且一般集中上机,与理论课内容脱节,失去了上机实验操作的意义;很多时候这门课程的学习都结束了,学生还不清楚这门课程与原来的课程有什么联系,学习这门课有什么用,更无从谈起培养学生的创新能力;而且“数值计算方法”课程教学过程中还存在着教学内容陈旧、教学方式落后及考试形式单一等问题。针对该课程目前的教学现状,如何对该课程教学进行教学改革,是值得深入思考的问题。
二、关于“数值计算方法”课程改革的若干建议
根据前文分析可知,目前“数值计算方法”课程教学中存在着一些不容忽视的问题。那么如何进行教学改革,培养学生的实际应用能力,体现该课程在工程科学中的价值和意义,是值得数学界思考的问题。根据近年来我校师生在该课程教学中出现的问题,本文对“数值计算方法”课程教学改革提出以下几点建议:
1.优化教学内容,选择合适教材
“数值计算方法”课程讲授时既要强调它的理论结构与使用价值,又要注重提升它与计算机使用密切结合的实用性特点,所以该门课程对教材的要求很高。然而现行教材有的理论偏深,不适合普通本科生使用;有的内容陈旧,与实际联系缺乏;有的实用性强,但与实践结合的算例较少;[3]再加上该课程内容抽象,知识连贯性不强,定理和公式较多,推导过程烦琐,从而导致学生对该课程的学习没有兴趣,只是为了应付考试机械性地记忆公式。按照教育部关于“数值计算方法”课程在教学过程中应把握“重概念、重方法、重应用、重能力”的培养要求,对该课程的教学内容应灵活把握,知识点讲解应详略得当,不同专业的学生对该课程的要求不同,讲解的侧重点也应有所不同,最好选用的教材也不同。对数学类的学生来说,理论与实践应并重,而对于别的理工科的学生来说,不在于理论的论证与推导,而应侧重算法原理与实际应用。当选定教材后,在实际教学过程中还需要对教学内容灵活整合,对于一些复杂且后继课程将会深入学习的内容(例如微分方程的数值解法等),[4]可以略讲甚至不讲。不同地区的高校对该课程的教学要求也略有不同,例如我校处少数民族地区,学生的基础知识相对较差,在该课程授课时更应减少烦琐公式的推导,重在加强学生对知识点的掌握与实际应用能力的培养。鉴于该课程对以后学习和工作的重要性,我校建议除了数学与信息类的学生以外,别的理工科(如物理,计算机、信息工程等)的学生也应开设数值计算方法课程的选修课。我院本专业教师在包玉兰教授的带领下,根据我校学生的状况及多年积累的教学经验,编写了比较适合少数民族地区学生特点的数值计算方法教材,现已经出版在我校试用。该教材内容较浅,并配备一定量的习题和上机实验题,要求理论学时50~60学时(包含习题课),上机实验16~20学时,并且标注了一些选讲的内容,不同专业的学生可以针对性地学习,[5]基本上满足了我校学生对该课程教材的要求。
关键词:计算思维;面向应用;文科专业;Access数据库应用;教学
中图分类号:G642文献标志码:A文章编号:1006-8228(2015)11-71-04
Abstract:Thispaperanalyzestherelationshipbetweenthecomputationalthinkingabilitytrainingandapplication-orientedcomputerteaching.TakingtheAccessdatabaseapplicationcourseasanexample,combiningwiththecharacteristicsofliberalartsstudent,fromtwoaspectsofclassroomteachingandthepractice,thepaperputsforwardthebasicideaoftrainingthecomputationalthinkingabilitythroughouttheteaching,andmakesitpracticed.
Keywords:computationalthinking;application-oriented;liberalartsmajors;Accessdatabaseapplication;teaching
0引言
自2006年3月,美国卡内基・梅隆大学周以真教授系统地阐述了计算思维,2010年9月中国科学技术大学陈国良院士在“第六届大学计算机课程报告论坛”倡议将计算思维引入大学计算机基础教学后,计算思维得到了国内计算机基础教育届的广泛重视。以九校联盟(C9)为代表的我国高水平研究型大学就大学计算机基础教学中的计算思维培养问题进行了探讨,并达成共识:将“计算思维能力的培养”作为计算机基础教学的核心任务。之后43所院校厦门会议就大学计算机体系研讨也一致认为,计算机教学面向应用是大学计算机教育的出发点和归宿,计算思维应成为大学生的普适能力,应该在坚持计算机教学面向应用的过程中培养计算思维能力[1]。同时呼吁大学计算机相关教学指导委员会、计算机基础教育研究会及广大教师,积极行动起来,旗帜鲜明地研究、建设基于计算思维能力培养的大学计算机体系。
1文科学生计算思维培养
1.1计算思维培养的重要性
当前,随着整个社会计算机应用水平的提高,对于高校计算机基础课程的教学内容提出了新的要求,即计算机基础教学内容不能仅仅着眼于软件工具的使用,而应有相对稳定的,能体现计算机学科思想和方法的核心内容,同时需要更加突出学生的思维方式、思想方法、价值取向,以及做人、做事、与人合作共处能力的培养,以提升学生多元能力――问题求解能力、实际应用能力、自我学习能力、沟通表达能力及团队合作能力。培养和推进计算思维包含两个方面:一是深入掌握计算机解决问题的思路,总结规律,更好更自觉地应用信息技术;二是把计算机处理问题的方法用于各个领域,推动在各个领域中运用计算思维,使各学科更好地与信息技术相结合[2]。
1.2文科学生计算思维培养与面向应用的关系
高校文科计算机教学任务是培养学生应用计算机的能力。文科专业学生相对于理工科学生,在知识结构上数理知识较少,在思维方式上更多地是从事实、现象得出结论,而不是运用概念、逻辑关系进行推理[3]。因此,对于文科学生的计算思维培养,首先要构建一种计算机文化氛围,让学生充分理解和认识计算机的特点和用途;其次是要结合学生日常学习中生动形象的实例,有目的、适度地引入思维训练,引导学生对问题进行解释、分析、抽象、提取,帮助他们形成问题求解的思路。
计算思维培养与面向应用的计算机教育之间应该是相辅相成的。培养计算思维的目的是使学生更深入地认识计算机知识背后的思维训练,从而学会应用计算机技术去解决问题的思路和方法,而在计算机应用过程中不断理解计算思维,逐步训练,使自己具备计算思维的能力,进而提高分析问题、解决问题的能力。
2Access数据库应用教学中计算思维培养
利用数据库工具对数据进行基本的管理、分析、加工和利用,对于当代大学生是非常必要的。我校针对文科学生开设的Access数据库应用课程是数据库技术的入门课程,也是培养计算思维的重要课程。数据库课程理论知识较多,所涉及的数据库模型、数据完整性约束、数据库设计、数据操纵、数据查询等方法,在本质上是一种思维方式的体现。下面从课堂教学和实践环节两方面,探讨如何将计算思维培养贯穿于课程教学中。
2.1教学中有目的地突出思维训练
根据文科学生的认知能力和形象思维能力较强的特点,在教学过程中,应注重由浅入深、循序渐进、用具体实例引导学生学会数据处理的方法。重点把握好第一课导入、数据库基础理论等关键内容的教学设计。
2.1.1重视教学第一课
教学第一节课是课程导入,使学生认识数据库,了解其应用,是激发学生学习兴趣的关键一节课。我们特别重视第一节课的教学设计,首先从学生身边的实例,例如学生校园一卡通、考试题库、图书信息检索等应用引入数据库,让学生体会到在日常学习生活中数据库技术的应用无处不在。接下来通过演示网上购物的一次交易,让学生体会商品购物过程中包含着用户相关信息、商品信息的读取;商品库存信息、商品销售信息的更新;用户付款信息、商品销售金额的统计;商品订单的生成等数据库知识与操作。最后教师给出数据库知识结构图,如图1所示。学生初步认识到学完这门课程后,能运用数据库基本原理及其数据库技术建立数据库,编写简单的应用程序,完成大量数据的管理工作。
2.1.2以具体案例引导学生理解数据模型的建立过程
在教学内容上,以学生较为熟悉的教务管理系统为切入点,从系统分析、数据收集、建立模型、数据入库开始到最终设计出一个完整的应用系统。其中如何抽取、组织现实世界中的教务管理数据,并转化成计算机能识别的一种结构保存,即合理建立教务管理数据库是课程的教学重点。以往讲授这部分内容时,让学生按照教材指示直接进入数据库,完成数据表结构设计。其实建立数据库、数据表的操作并不难,难点是如何对现实世界的事物抽取、转化为数据库中的数据,这个知识点不讲授清楚,学生就不会理解,当学生独立完成数据库综合作业时,问题就会暴露出来,对于所要设计的数据库,不会分析、抽象现实世界中的哪些事物及其属性将由计算机处理,不理解信息世界中的概念模型如何转化为计算机世界中的关系模型等等。现在我们在讲授这部分内容时,不直接将已设计好的数据库提供给学生,而是要有意识、有目的地引导学生分析、抽象出现实世界事物及其属性,由于现实世界的复杂性,不可能直接从现实世界建立模型,因此用信息世界的E-R(实体-联系)方法建立概念模型,再转化为计算机世界所识别的关系模型来存储,并通过图示帮助学生认识抽象的意义,理解模型转化的过程,如图2所示。
经过对教务管理业务分析,将部门(系)、教师、学生、课程、教材等基本信息抽象为实体。一个部门(系)拥有多个教师或学生,一个教师或学生只能在一个部门(系)中工作或学习;一个学生可以选修多门课程,一门课可被多个学生所修;每个学生选修的每门课只有一个课程成绩;一本教材可用于多门课,一门课有一本主教材为实体间联系,用E-R方法描述,如图3所示。
根据概念模型设计,转化为教务管理数据库关系模式如下(以部门、学生、课程为例):
⑴部门(部门编号,部门名称,部门主任,办公室,联系电话…);
⑵学生(学号,姓名,性别,出生年月,籍贯,所在部门编号,住址,联系电话…);
⑶课程(课程编号,课程名称,学时,学分,所用教材编号…)。
分析、讲授到这一步,学生便可以根据关系模式用数据库建立一张张关系表了。学生只有认识到建立数据库系统的目的,是要实现计算机对现实世界中各种信息的处理,掌握了数据库设计的关键环节后,围绕教务管理的表、查询、窗体、报表等数据库对象展开设计就变得轻松了。
现实世界中教务管理涉及的每一个学生、老师、课程、教材等映射成信息世界的一个个实体,再到计算机世界的一条条记录,这一过程实际上就是一种分层次、逐步抽象的过程。抽象是一种精确表达问题和建模的方法,也是计算思维的一个重要本质[4]。基于“抽象思维”,采用约简、聚类、分解等方法就能够将一个复杂的客观现实形象化地描述出来[5]。数据库基础理论中有很多计算思维思想的体现,我们要根据文科学生的学习特点,适度地、逐步地引入,同时结合实践环节使学生理解、掌握。
2.2实践环节为学生预留思考的空间
计算思维是按照预防、保护及通过冗余、容错、纠错的方式,并从最坏情况进行系统恢复的一种思维方法。数据库管理系统中控制功能(安全性、完整性、并发性等)是计算思维的最好体现之一[6]。如关系的完整性约束,保证了数据处理过程中的正确、有效和相容。对于这个概念,如果直接讲授,文科学生不一定都能理解,而将这部分知识结合实验内容,让学生在实践过程中理解关系完整约束,可收到较好效果。
学生在完成数据表结构设计后,按照要求录入数据。实践环节教材一般都是按照实验目的、实验要求、实验方法及步骤进行组织的,学生按照步骤一一完成即可。实验所用数据都是符合字段属性设计及数据完整性要求的,学生按部就班完成就不会出错,但这样也体会不出数据完整性在数据库中所起的作用。现在我们改变一下方式,提供数据源时有意给出一些违反字段属性或数据完整性要求的数据,例如在学生表中,对于学号字段给出重复值或空,那么在定义学号字段为主键时,由于不能通过学号识别每个学生,由此产生错误提示信息。对于学生所在部门编号字段,实验数据有意给出某个学生的所在部门编号字段值不是部门表中给出的部门编号,学生在录入数据时不会有任何问题,但在建立部门和学生的一对多关系时,无法实施参照完整性,因为将学生分配给一个不存在的部门,违反参照完整性原则。再有对于出生年月字段,在其字段属性的有效性规则设计时,设置规则为出生年月在1990年至1999年之间。给出的实验数据,有的学生出生年月不在这个范围内,数据就无法录入,因为违反了用户定义的完整性约束。当学生遇到上述种种错误时,必然产生困惑,从而会思考引发错误的原因,寻求解决问题的办法,教师通过指导学生改正错误,挖掘出隐含在操作背后的关系完整性约束知识点,学生也就能够理解了。
在实验环节,针对每个知识点,我们利用事先设计好的实例,先讲授要实现的目标和基本方法,在完成实验过程中,不断引出问题,启发学生对知识点理解和掌握,给学生预留一些思考的空间,让学生带着各自的理解和问题完成实验内容。
2.3应用数据库技术培养求解问题意识
每年度学校举办程序设计竞赛(数据库类),我们积极引导、鼓励学生参加,从班级选拔开始,再进行院级选拔,最终到校级参加现场答辩。在自拟主题的数据库设计中,学生需要自己去识别问题域,根据主题数据需求自行设计数据库。在每年度文科创新性实验项目的申报与立项工作之初,我们采用多种形式向学生宣传,从申报题目、学生组队等方面给予必要的指导。结合所学数据库知识,学生成功立项“人文北京之北京传统饮食文化信息查询系统”、“历代帝王墓葬发掘史数据库”等项目,经过一年的项目研究,顺利结题。参加竞赛、项目研究的学生感受颇多,不仅能够学以致用,亲身实践了课堂所学及课外拓展的知识,提高了动手能力,同时也提升了应用数据库技术求解问题意识的培养。
3结束语
面对非计算机专业的学生,课程应该注重培养学生的思维、方法、意识、兴趣和能力,而不是灌输一大堆概念与知识[7]。数据库课程教学的培养目标是以提高学生的应用能力为根本,学生首先要熟练掌握数据库基本技术,学会利用数据库解决实际问题,进而能综合应用计算机技术为本专业领域服务。目前,经过两轮教学实践,我们的体会是教学过程较为顺畅了,学生学习兴趣提高了,数据库综合作品设计质量提高了。在本年度进行的北京联合大学程序设计(数据库组)竞赛中,我院有19组参赛,2组获得一等奖,8组获得二等奖,7组获得三等奖,取得可喜成绩。数据库应用课程中如何更好地培养学生计算思维能力的教学研究还将继续深入开展,对于教与学,都是挑战,我们将不断探索与实践。
参考文献(References):
[1]卢湘鸿.大学计算机体系研讨―43所院校厦门会议共识[J].
计算机教育,2014.13:27-31
[2]谭浩强.研究计算思惟,坚持面向应用[J].计算机教育,
2012.21:45-49
[3]钟伟,刘佳.高校文科计算机基础教育教学方法探析[J].河北
大学学报(哲学社会科学版),2000.4:88-90
[4]程春玲,张少娴,陈蕾.基于计算思维能力培养的数据库课程
教学研究[J].中国电力教育,2012.8:81-82
[5]李雁翎,谊.知识的内化:计算思维的培养与数据库教学[J].
中国大学教学,2013.7:33-35
[6]李雁翎,谊.知识的内化:计算思维的培养与数据库教学[J].
中国大学教学,2013.7:33-35
关键词:硬件类课程;教学改革;计算机专业;课程建设
多年来,围绕究竟是培养应用型人才还是培养精英型人才的问题,高校中非名牌院校计算机类专业一直争论不休。由于人才培养模式定位不清,导致这类院校的计算机专业课程教学,特别是硬件课程的教学存在着诸多不尽人意的地方。
2009年11月,由中国计算机学会教育专业委员会主办的全国首届计算机应用型人才培养论坛(2009)在首都师范大学召开。会议首次将非名牌院校计算机类专业人才培养模式明确定位于应用型人才培养上。因而,及时开展适应应用型人才培养定位的计算机硬件课程教学改革的研究并深入探讨,十分必要。
笔者结合自己多年的教学经验,探讨了为改善计算机专业硬件课程教学效果,教师在教学中应重点考虑解决的几个问题,分析了这些问题产生的原因,给出了解决问题的方法。
1重点考虑解决的问题
长期以来,普通高校计算机专业硬件课程教学的现状不容乐观,几乎成了人们的共识[1]。要使目前硬件教学的现状有根本的改观,使其真正能适应应用型人才培养模式,下面几个问题必须考虑重点解决。
1.1课程设置与教材问题
课程设置和教材问题一直是困扰计算机专业硬件教学的大问题。在课程设置上,一些院校重软轻硬,硬件课程因人设课,能砍则砍,实在不能砍的则压缩学时等,以上现象时有发生。
在课程内容上,对现行硬件课程体系的质疑多集中在如下两个方面,一是认为课程内容陈旧,如很多人提出现在都在用奔腾计算机系列,而微机原理课程还在讲80X86平台,与实际应用脱节,造成学生没有兴趣学。二是各门课程的衔接不好,有些内容在多门课程中重复出现。
在教材选择上,普通高校往往极力向重点院校看齐,而重点院校的教材都是基于精英型人才培养编写的,未必适合普通院校应用型人才的培养需要。
1.2动手能力培养问题
硬件类课程的教学对动手能力的要求相对较高,而计算机应用型人才的培养定位对动手能力的培养提出了更高的要求。然而,硬件课程教学的特点决定了其实验设备、资金、人员的投入都要比软件课程大得多。软件类课程实验只要有一台计算机,装上不同的软件就可以开设不同的课程实验。但硬件课程则不同。各门课程的设备多不通用,且价值不菲,而且每次实验课都要有电子器件的消耗。
诸多因素使得目前多数普通高校存在着硬件实验室设备投入不足、实验开设不到位等现象,严重影响了学生动手能力的培养。
1.3师资问题
影响硬件类课程教学效果的另一大因素是师资问题。应用型人才的培养主要靠教师的教学实践活动实施完成。很难想象一个平时很少参与工程实践,自身动手能力就很差的教师能培养出合格的应用型人才来。遗憾的是,目前的现状是相当一部分普通高校的教师是从高校毕业后直接进入高校教师队伍的,工程实践的经历与经验很少。他们中大多数是经过读研或读博的过程,本身经历的是精英教育,习惯于从书本到书本,从理论到理论。教师本身对计算机应用知识的匮乏也直接影响到他们的课堂教学,使得他们对教材的再处理能力降低。教材写了什么,上课就讲什么。讲的内容在整个课程体系中占据什么地位,有什么用,这样的问题学生不知道,老师也说不清。学习者总以为学习的内容没什么用,导致学习动力不足。而学生不喜欢学习硬件课程,又反过来影响授课教师的授课热情,从而陷入恶性循环。
1.4学生兴趣问题
学生对硬件类课程的兴趣普遍不高,也是影响硬件类课程教学效果的因素之一。兴趣是最好的老师,学生对课程没有兴趣,很难保证教学质量。
影响学生兴趣的因素很多。一方面,学生普遍认为硬件类课程就是讲计算机内部原理,学了没什么用处,如果教师在开课前没作足够的引导,学生自然不会有兴趣。其次,硬件类课程本身就繁杂,难学难懂,部分教师对硬件课程教学的不到位将导致学生学不懂,跟不上,即使有了兴趣也难以保持长久。再次,硬件类课程不像一些软件编程类课程那样,学过的内容马上就能上机应用,立竿见影,看到效果。而必须经历购买元器件、制版、焊接调试等过程,要有相应的工具和仪器设备。这些对于初学者来说很难做到。不能学而致用,会使学生感觉所学内容离自己很远,对课程的兴趣也会越来越淡。
2解决方法
2.1认真研究课程,选编适合应用型人才培养的教材
在课程设置上,教师首先应提高认识,明确硬件类课程不仅仅只是讲计算机内部结构的,也并非应用方面不如软件有用。实际上,这类课程的更重要目标是培养学生根据应用需求自己组织构造计算机应用系统的能力。在当今嵌入式系统、物联网人才需求越来越旺盛的形势下,对应用型人才的能力要求越来越高,因而硬件类课程设置必须到位。
在课程内容上,对于内容陈旧问题,有人提出不如直接以奔腾处理器为平台讲授微机原理课,但这种方案在教学中很难实施。奔腾处理器过于复杂,初学者很难接受这样复杂的系统。为此,参考文献[2]提出了另一种方案:用“单片机原理与应用”代替“微型计算机原理与接口技术”课程,即以MCS-51单片机系统代替Intelx86系统,作为计算机组成原理和体系结构的实例开展教学。由于单片机系统功能和构成简单,便于理解,对于学生理解计算机硬件体系构成,掌握计算机系统的设计和实现技能,可能具有更好的教学效果。因此,在计算机硬件课程系列的设置中,建议增加“单片机原理与应用”课程的教学课时和实验学时,作为必修课程,让学生通过对单片机系统的学习和实验,了解和掌握计算机系统的原理和应用。同时适当减少“汇编语言程序设计”和“微型计算机原理与接口技术”的课时,或者将其精简合并成一门选修课程,将Intelx86系列处理器作为一种典型的体系,向学生介绍计算机系统的一个重要分支――微型计算机系统的特点和体系结构及其相关应用技术。这种设想具有一定可行性,可在实践中进一步验证其科学性和合理性。
对于内容衔接问题,可以认真研究课程的内涵,合理确立各门课程的授课内容,构建知识内容的前后衔接、实验环节密切配合的一体化教学与实验体系,写出合格的教学大纲,为教学实施提供具体合理的依据。各门课程的内容界定为基础知识在某门课程中的体现即可,避免在多门课程中重复出现相同的内容,从而对课程内容进行精炼。参考资料[3]将数字逻辑、计算机组成原理、汇编语言、接口技术、嵌入式技术等主要课程的内容进行了界定,笔者以为很有参考价值,现稍加整理,摘录于下:
1)数字逻辑主要讲述数字逻辑的基础器件、逻辑代数、组合逻辑电路、时序逻辑电路、常用中规模集成电路,如编码器/译码器计数器等内容。
2)计算机组成原理主要讲述通用计算机主要组成部分的组成原理。讲述数据表示与编码,运算方法与运算器实现,一般意义上的指令系统及其设计方法,控制单元构成原理与实现,存储器基本原理与存储器构成、存储系统的构成,输入输出部件与输入输出系统,总线系统等。特别指出,数据表示中的各种进制数表示与相互转化的内容,在计算机导论等课程中己经讲过,在本课程中不讲,但是要求学生熟练掌握。只提示,不深入讲述。
3)汇编语言主要讲述Intelx86系列CPU的内部结构与寄存器组织、寻址方式、指令系统、汇编语言的语句格式、汇编语言程序设计方法与技巧等。本课程中不讲二进制数及其各种编码。
4)接口技术以Intelx86系列CPU为原型机核心,讲述处理器与存储器、与IO设备之间的接口方法,具体存储器的扩展、地址分配等,IO端口及编程方法,串行接口与并行接口,A/D与D/A接口等内容。学生通过学习掌握基本的接口实现方法。
5)嵌入式系统从应用角度出发,直接结合目前广泛使用的嵌入式系统,讲述一般的组成原理,以一种具体的嵌入式系统为例,从其内部结构、操作系统定制、驱动程序编写、具体的IO接口等部分,实现具体应用系统的设计和实现。
笔者以为,上述课程内容界定中,如果能在数字逻辑中增加VHDL和FPGA/CPLD的内容就更好了,可以在后面的计算机组成原理课程的实验和综合设计中直接使用VHDL和FPGA/CPLD,来完成相应功能部件的设计。而在嵌入式系统课程中,也可以用到相应技术,这对于培养应用型人才十分有利。
而对于教材问题,短期内可组织学科专家精选现有教材,使所选教材尽量适应应用型人才培养的教学需要。也可以按照教学大纲自己编写讲义,同时指定几本参考书。在长期考虑中,则可以组织有能力的教师自己编写合适的教材。
2.2加强实验室建设,提高学生动手能力
为提高学生动手能力,必须加强实验环节。
首先,学校应该提高对学生动手能力培养的认识,加大对实验室的投入,保证实验室所需的设备、场地、人员的配置到位。特别是实验室应该配备足够的专职实验员及实验教师。在此基础上,要认真组织专业教师研究实验内容及开课方式。应用型人才的培养必须加大实验内容的比例,完善基础性实验,做好综合性实验,加强设计性实验。增加实验考核分值。
仅仅依靠课内实验的训练还远远不够。还必须通过不同形式的实践教学活动进一步提高学生的动手能力,加强对学生实践能力的训练。而开放实验室是培养应用型人才必不可少的训练平台。另外,还应该鼓励学生积极参与课外科研训练实践、大学生电子竞赛等活动。通过这些实践活动,学生能够将所学知识进行综合归纳,提高对计算机硬件课程的深入理解,并提高计算机的应用水平。
2.3加强师资培训,提高师资质量
打铁先得自身硬,要把学生培养成应用型人才,教师自身必须是计算机应用的高手。为此,一方面要鼓励教师申报纵向和横向课题,通过参与科研课题提高自己的动手能力。另一方面,应有计划地把教师送到一些开发公司、企业及科研单位,直接参与计算机产品的应用开发。
而要教好硬件课程,教师本身必须能站在一定的高度,把握课程,驾驭课程。在开课之前,教师应该依据教学大纲处理教材,不应该教材写什么就讲什么。要做到这些并不容易,一方面,学校应该定期对教师进行业务培训,另一方面,学校也应该安排有实力、有经验的教师传帮带经验较少的年轻教师。安排年轻教师给受学生欢迎的教师做助教、带实验,对提高他们的业务素质很有好处。
2.4千方百计提高学生学习硬件的兴趣
提高学生学习硬件的兴趣至关重要,要想尽一切办法提高学生学习硬件的兴趣。
首先,要让学生清楚认识到每一门硬件课程都很有用,也很重要,使他们主观上想学。为此,在上每一门课程前,教师先要舍得花时间讲清这门课程在整个计算机体系中所处的位置,特别要下功夫讲该门课程有什么用途。如有的课程,可以对学生说是考研科目,而有的科目,则可以对学生说是进入嵌入式系统、物联网等当今计算机界最热门的领域必须掌握的基础课程,而在就业形势十分严峻的情况下,这些领域人才需求如何旺盛等。学生认识到这门课程的用途,才能对其产生兴趣。
其次,要根据学生层次调整课程内容,保证学生能学得懂,跟得上,使他们能学进去。为此,授课教师在上课前要依据教学大纲,根据授课对象的接受能力认真处理教材。在授课中,要把哪些是重点、哪些是难点,每一部分内容需要熟练掌握、还是一般掌握、或者了解一下就行,对学生说清楚,避免学生在一些难以理解而又不是重点内容的问题上纠缠过多。在教法上,可根据具体内容灵活采用多种教学方法,如任务驱动法、案例教学法等。学生能学得懂、跟得上,学习兴趣才能保持长久。
再次,要创造各种实践机会,加强动手能力训练,使学生学有所用,能看到应用成果。为此,教师应根据各门课程的不同特点,在正常的实验课外安排各种实践环节。如数字逻辑电路、单片机原理这种实践性较强的课程,可在课程结束后安排一次课程设计;像计算机组成原理课,可安排EDA设计,采用FPGA/CPLD设计CPU等;而单片机原理课程,可引导学生使用Proteus软件仿真,使学生即使离开实验室也能方便地动手实践,在实践中学习。鼓励学生参与教师的科研项目。鼓励学生组织各种课余实践小组,并为他们配备指导教师及实践环境。鼓励学生参加各类竞赛,并公开地奖励获奖者。学生见到了应用成果,就会有成就感,从而提高学习兴趣。
3结论
导致普通高校计算机专业硬件课程教学效果不佳的因素很多,但理顺了课程设置与教材问题、学生动手能力培养问题、师资问题和学生学习硬件的兴趣问题,就会使硬件课程教学现状得到较大程度的改观。
参考文献:
[1]王艳玲.计算机专业硬件类课程教学改革探讨[J].计算机教育,2009(20):90-92.
[2]章韵,倪晓军.应用型专业计算机硬件课程体系建设的探讨[J].计算机教育,2009(4):99-101.
[3]马礼,张永梅,宋丽华.培养计算机类专业学生硬件方向创新能力的研究与实践[J].计算机教育,2010(2):1-4.
HardwareCourseRenovationtoAppliedTalentsMajoringinComputer
SHENGLin-yang,LILi-ping
(InstituteofComputerScienceandInformationEngineering,HarbinNormalUniversity,Harbin150080,China)
关键词:课程整合;程序设计基础;教学内容;教学方法;能力培养
一、引言
大学非计算机专业的公共计算机基础课程均在大学一年级开设,共开设两门必修课,即第一学期开设《大学计算机基础》、第二学期开设一门计算机程序设计课程。《大学计算机基础》属于入门性的课程,主要介绍计算机的基本知识,掌握OFFICE等常用软件的操作和使用,使学生具备操作和使用计算机的基本技能。计算机程序设计课程属于提高性的课程,目的是使学生初步具备计算机编程的能力,这种课程体系、教学内容与教学方法已经沿用多年。随着社会信息化水平的不断提高和建设创新性国家、培养创新性人才的需要,公共计算机基础教学也面临着改革与发展的必然要求。大连民族学院是国家民委直属的一所民族院校,也是唯一一所设在沿海开放地区、以工科和应用学科为主的民族院校,历年来,学校高度重视学生计算机应用能力的培养,鼓励和支持教师针对民族院校的特点大胆进行公共计算机基础教学的改革与实践,截至2008年,《大学计算机基础》获得了辽宁省精品课程,还获得一项辽宁省教育教学改革成果二等奖等标志性成果。在此基础上,2009年开始,我校又开始实施新一轮的计算机基础教学改革工程,其主要内容是:①调整原有的课程体系。即将第一学期开设的《大学计算机基础》和第二学期开设的《计算机程序设计基础》两门课程进行合并、整合为一门课程;②改革教学内容。整合后的教学内容以“程序设计”为主线,将原《大学计算机基础》课程的内容进行取舍和提高,并融合到《计算机程序设计基础》课程的相关内容之中,将原定于第二学期开始学习的程序设计内容提前到第一学期开始学习;③以能力培养为导向,改革教学方法与手段。经过两年的实践,已经取得了明显的效果。本文根据作者面向部分专业讲授VB程序设计基础课程的经历介绍改革中遇到的主要问题、采取的措施和实践的效果。
二、改革中遇到的主要问题
1.民族院校的新生入学时计算机水平参差不齐,给教学带来很大困难
民族院校是为少数民族和民族地区服务的,是培养少数民族高素质人才、传承和弘扬各民族优秀文化的重要基地。全国现有民族院校15所,在校大学生20余万人。我校有来自56个民族的学生,来自民族地区和西部地区的学生占81.26%,少数民族学生占65%,生源个体差异大,有的学生入学时刚刚接触计算机,有的学生中文基础比较差。表1是大连民族学院2010级学生入学时计算机水平测试结果,可以看出学生的计算机知识和技能差异很大,其中,40分以下来自西部民族地区的学生占62%,而成绩较好的学生大部分来自东部地区。
表1大连民族学院2010级学生入学计算机水平测试情况
2008年以前,按照原来的课程体系是第一学期先开设一门《大学计算机基础》课程,使学生具备操作和使用计算机的基本技能,之后在第二学期开设“程序设计基础”课程,这种课程体系对基础较差的部分同学有益,但存在的主要矛盾是有一定基础的学生吃不饱,而且由于课程内容的起点比较低,已经落后于现代信息社会对大学生计算机应用能力的更高要求,因此,改革也势在必行。2009年以后,按照整合后新课程体系的要求,提高了起点,且程序设计基础课程调整到第一学期就开设,使得基础较差的部分同学面临着比较大的困难,也给老师的教学提出了新的挑战。
2.传统的课程教学定位不适于学生计算机程序设计能力的培养
程序设计基础课程的教学目标是培养学生具备利用一种计算机的程序设计语言编写出正确的程序进行问题求解的基本能力;课程的特点是程序设计语言的理论知识是格式化的记忆性知识,且内容多而散,而编程序时则需要学生能够根据所求解的不同问题进行灵活运用;教学的重点是程序设计能力的培养,难点是求解问题的计算思维能力的建立。传统的教学方法侧重于对格式化的语言知识的理解和记忆,教师和学生忙于对大量语言知识单元的教与学,实验教学也是主要针对知识单元设置相应的实验项目,侧重消化和吸收,期中或期末布置一个综合性的大项目,让学生综合运用所学知识完成程序的设计。在多年的教学实践中,我们意识到这种教学方法存在的问题,一是在平时的教学中,学生只关注知识单元的理解和单一功能的实现,把本来具有前后联系的知识割裂开来,往往是学了后面忘了前面,等到期末做综合性大项目时缺乏整体观念而感到茫然,根本达不到期待的效果。二是由于课程内容较多,教师总想尽可能多的布置实验项目,形成一种以量取胜的导向,且总埋怨学时不够。三是实验项目的设置以实现单一功能为目的,重在训练学生理解所学的格式化命令运行的结果是什么,缺乏训练学生灵活应用的能力,仍然停留在一种操作技能性的能力培养层面。学生普遍认为枯燥难学,难以形成整体的逻辑思维,其结果是只要题目稍作改变就不知所措。因此,应该将课程教学的定位调整到培养学生的计算机程序设计能力上来,重点应该是如何训练学生建立求解问题的思维能力。
三、采取的措施
1.实施强化辅导,帮助基础较差的学生跟上正常的教学进度