时间:2023-06-15 09:27:16
绪论:在寻找写作灵感吗?爱发表网为您精选了8篇计算机语言的概念,愿这些内容能够启迪您的思维,激发您的创作热情,欢迎您的阅读与分享!
关键词:MOOC;高职教育;实验教学
随着计算机技术的飞速发展与计算机应用领域的不断拓展,给计算机专业教学提出新的挑战。实验教学是计算机专业人才培养的规定动作和必要环节,是培养学生自学能力、实践能力和创新能力的重要途径。针对计算机专业实验教学现状,基于MOOC(Massive Open Online Course,大规模开放在线课程)理念进行计算机专业实验教学改革,创建多元实验教学内容、构建全新实验教学模式、创建立体化实验考核方法与构建新型实验教学师资队伍,是实现计算机专业“以 培训为导向,以能力为本位”教育理念的有力保障。
一、计算机专业实验教学现状
1.实验教学内容更新滞后
实验教学内容是学生掌握技能能力的主要来源。目前,计算机专业的实验教学内容多依教材知识点设计,参照教材实例“依葫芦画瓢”,缺乏启发性与创新性;实验内容相对孤立,各实验间不能形成技能体系,学生难以掌握实际应用能力;部分实验内容知识陈旧,不能体现技术热点,与用人单位要求联系不紧密。
2.实验教学模式不能满足教学发展需求
合理的实验教学模式是良好教学效果的前提与保障。传统的实验教学模式主要包括教师演示讲解与操作指导,教师是课堂的中心,学生单一的依赖教师获取知识。教师和学生之间的信息传递为“单向”传递,学生难以在课堂上将所学知识“内化吸收”。随着网络的发展与智能终端的普及,传统的实验教学模式不能激发学生的学习热情,不能充分调动学生学习积极性。
3.实验考核方法不能实现多维度考核
考核方法是学习方向的指挥棒。目前高职计算机专业实验课程的考核方法主要包括实验报告、平时作业、阶段考核和期末考核等,由教师完成全部考核。实验报告和平时作业不易实现“一题多卷”,难以评价学生完成的独立性和学习的主动性;阶段考核和期末考核只对阶段学习做出总结,不能实时跟踪学生的学习状态;考核仅由教师完成,存在一定的主观因素。现有的考核方法不能很好地实现“以考促学”的目的。
4.师资队伍专业素质有待提高
教师的专业素质直接影响实验教学活动效果。由于教师参加培训和参与科研项目的机会较少。随着计算机技术的发展与应用领域的拓展,教师的知识结构与教学思想已不能满足培养人才的需要。
二、基于MOOC理念的计算机专业实验教学改革
1.创建多元实验教学内容
MOOC是一种新兴的网络化智慧教育,其利用网络获取世界范围优秀教学资源的模式给我们提供了一个良好的教学改革思路。基于MOOC理念,以实验教学大纲为基准,将教学内容分解为若干个关联的技能能力点,细化实验内容,突出实验重点;以市场需求为导向,融入ACM大学生竞赛与科研项目,优化实验内容,提高实验课程的实践性、启发性与创新性;以互联网为平台,引入网络优质资源与MOOC在线课程资源,丰富实验内容,增强实验课程的实时性与先进性。充分利用网络资源,优化实验课程知识结构,创建多元实验教学内容。
2.构建全新实验教学模式
根据计算机实验教学特点,构建传统实验课堂、MOOC-翻转课堂、网络虚拟课堂相结合的“三个课堂”实验课堂体系;创建理论知识讲解与实践应用操作相结合、教学活动与竞赛/科研活动相结合、单一课程与相关专业课程相结合的“三个结合”的立体教学方法;创建教师引导-学生主体模式、小组讨论-个别辅导模式、理论分析-操作演示模式相结合的“三个模式”辅导方法;构建教师与学生互动、学生与学生互动、师生与企业互动相结合的“三个互动”沟通方式。充分利用网络资源,有机整合教学视频、电子教案、板书讲解与实践操作,构建立体化实验教学模式。
3.创建立体化实验考核方法
针对 计算机实践课程的特点,创建考核学生知识掌握情况、激发学生学习兴趣、促进学生全面发展相结合的考核目标;构建操作试为主、笔试为辅,课堂问答/答辩为主、课后作业为辅,实际课堂互动为主、虚拟课堂互动为辅,团队合作为主、创新性为辅的多角度考核指标;创建教师评价、生生互评、学生自评相结合的“师生共评”评价方法。在考核中,将成绩评定渗透到每个教学环节,做到公平公正公开,注重学生学习主观因素的考核,达到“以评促学”。
4.构建新型实验教师队伍
实验教学是理论教学的巩固与延展,是培养学生实践能力的重要环节。实验教师的教学活力与实践能力直接影响计算机专业课程的教学效果与学生实践能力的培养。基于MOOC开放、互动的理念,在“走出去、请进来、传下去、动起来”的培养思路基础上,鼓励实验教师积极进行交叉学科知识学习、积极参与MOOC团队建设,在优化自身知识结构与提高实践能力的同时,开拓教学思路、增强教学能力,从而更好地激发教学活力。
三、实验教学改革效果与结论
《计算机应用基础》作为高职院校的一门公共必修课,是非计算机专业学生获得计算机方面知识的最重要途径,尤其是在培养应用型、技能型人才的高等职业技术院校更为重要。然而传统的计算机应用基础教育模式是以教材知识点为核心,缺乏创新,学生学习的积极性主动性不高,实践能力较差。
为了不断提高技能水平,增强就业竞争力,高职院校的学生在取得大专学历的同时,努力获得各种职业资格和岗位资格证书,而全国计算机等级考试一级MS Office就是其中之一,它用以测试学生的计算机应用知识的掌握和实际操作能力。从历年我校学生参加的国家一级MS Office考试的成绩(满分100分,60分及格)来看, 过关率排名在全区范围来讲即使相对比较靠前,但绝对成绩还是较低,这充分证明了传统教育模式的弊端。
因此,笔者尝试将CDIO理念应用于高职院校计算机基础课程的教学中,分析CDIO指导下教学的特点和实施教学的思路,以包头轻工职业技术学院为例,结合本校计算机基础课程的目标和学生的特点,探索一种新的教学模式。
2 CDIO简介
CDIO代表构思(ConcEive)、设计(Design)、实现(Implement)和运作(Operate) ,它以产品研发到产品运行的生命周期为载体 ,让学生以主动的、 实践的、课程之间有机联系的方式学习工程。
CDIO理念是做中学和基于项目教育和学习的集中概括和抽象表达。它提出系统的能力培养方案与实施办法,与我国高职院校所倡导的项目教学及校企合作办学在理念上具有一致性,这就决定了CDIO引入高职教育具有十分重要的作用。
从2000年起,麻省理工学院和瑞典皇家工学院等四所大学经过四年的探索研究,创立了 CDIO 工程教育理念。国内最早引入CDIO工程教育理念的是汕头大学工学院,经过多年的实践表明,CDIO理念非常适合工科教学的各个环节。目前国内已有近四十所CDIO试点高校,并且教学改革多集中在本科院校的机械、电气、土木这些学科类别进行,而高职院校对于这种教学模式的渗透相对较少。
3 计算机应用基础教学改革策略
3.1 编写适合教学要求的教材
根据教学要求和改革思路,以及国家一级MS Office考试大纲的要求,编写一本相适应的教材,教学内容应该突出应用性和先进性,希望学生能够学以致用。教材一共可以分为七章,第1章计算机基础知识,第2章认识Windows 7操作系统,第3章文字处理软件Word2010,第4章电子表格处理软件Excel2010,第5章使用演示文稿制作软件PowerPoint2010,第6章计算机网络基础知识。其中第1章和第6章是纯理论性的知识,可以以选择题的形式考核同学们的掌握情况,其他章节我们可以分为若干个任务,每个任务对应1~2课时的教学内容,每章之后还有实训的要求和内容。其中任务部分较为详尽地介绍一些实用的操作,如同老师在手把手地对学习进行实践操作一样,而实训部分则结合任务内容提出一些要求,学生在思考之后才能进行操作,以期对基本操作水平进行巩固提高。
3.2 灵活运用教学方法和手段
坚持以教师为主导、学生为主体的现代教学理念,课程的实训环节将教学内容设计为教学项目,围绕项目的完成开发若干任务单元,每个任务单元的实施都包含构思、设计、实施、运作等4个环节。教师在教学过程中应该灵活采用个案教学、项目教学、问题教学、任务驱动式教学、启发式等教学方式方法,以充分调动学生的学习积极性,加深其理解。教学做之间形成良性互动、互相促进,整个项目设计的精髓是实践性和可操作性,项目设计环环相扣,紧紧围绕所需学习和掌握的内容,形成一个整体教学方案和授课模式。比如说利用Word创建一份个人简历。该项目涉及到以下几个主要知识点:表格的基本操作、编辑和排版文档、图片的处理。教师可以引导学生充分发挥自己的潜力,利用已学的知识设计一份精美独特的个人简历。首先进行构思,个人简历一般包括哪些部分,学生们可以借助网络等手段进行查阅资料,得到结论,一般可以分为封面,基本情况和自荐信三个方面。接着大家就可以开始查找素材,选择适合自己风格的封面图片,根据需要创建并填写表格,以这种简明扼要的表现方式展现自己的基本情况,最后写一封自荐信。一边制作思考,一边进行格式设置,最后同学们纷纷设计出一份别具心裁的个人简历,之后相互间再多比较比较,取长补短。这样的教学方式特别灵活,学生们的学习兴趣也被激发,转被动型学习为主动型学习,从而提高了教学效果和教学质量。
3.3 设计全新的学习效果考核体系
关键词:CDIO;计算机文化基础;教学改革;高职
中图分类号:G642.0 文献标志码:A 文章编号:1008-3561(2016)22-0025-02
一、前言
“计算机文化基础”在高等教育中的每一个专业都将开设,是一门必修的公共课。该课程传统的教学模式是教师讲完基础知识点之后,大学生结合上机进行实训巩固。这种教学模式没有针对性,大学生的学习兴趣低,教师也无法有效地掌握大学生的学习情况。因此,导致课堂教学满堂灌,上机实践课也只是依葫芦画瓢,大学生没有自己的主见,也不知道自己操作的目的,缺乏创新性,不利于培养高素质的应用型人才。
二、传统“计算机文化基础”的教学现状
当前,绝大多数的高职院校都将“计算机文化基础”作为一门必修的专业公共课写入到学院教学培养方案中。据了解,大部分高职教师在此课程的教学过程中仍然采用传统的教学方法,即教师先讲知识点,然后学生上机实训。这种传统的教学模式往往只注重计算机基础理论知识的讲授,所举的例子往往也只是为了验证理论知识而设计,没有目的性和针对性。章节内容各知识点之间一盘散沙,缺乏有效的前后联系。在这样的课堂上,教师通常会以讲授和简单的练习作为和学生互动的教学手段,缺乏和实际应用的密切结合,导致的后果是学生只能被动地接受书本中的知识,不能激发学生的学习主动性,学生在上课时往往会感到内容枯燥无味,而碰到具体实际问题时却又无从下手。目前,对于高职院校的学生来说,他们在入校之前大部分已经接触过计算机基础知识,对其中的部分内容已经了解却不甚精通。因此,这种传统的教学模式造成学生上课注意力不集中,对知识点的掌握似是而非。为了解决这种困境,提高课堂教学效率和学生的学习积极性,有必要对此课程进行教学改革。
三、CDIO项目理念
在“计算机文化基础”课程教学中,可以借鉴CDIO理念,吸引学生的学习兴趣,提高学生的自主学习能力、逻辑思维能力及创新能力,提升课堂教学效率。CDIO工程教育模式是国际工程教育改革的最新成果,其创始人爱德华・克劳利因创立CDIO这一深度影响全球的创新人才培养模式而获得美国国家工程院(NAE)“戈登奖”。CDIO中的C代表构思(Conceive)、D代表设计(Design)、I代表实现(Implement)、O代表运行(Operate),它的工作周期是从产品研发到产品的运行,以其生命周期为载体,让学生以积极主动的、实践的、课程之间有机联系的方式进行专业学习。按照CDIO的培养大纲要求,在实施过程中将学生的知识能力分为四个方面,分别为工程基础知识、个人能力、人际团队能力以及工程系统能力。这样,就以综合的培养方式促使学生在这四个层面达到预定目的。
四、CDIO项目化教学模式在“计算机文化基础”课程中的实施
现在大多数的高职院校多媒体设备齐全,教学设施相当先进,上课基本也是采用多媒体教学环境,为实施CDIO项目化教学模式奠定了良好的基础。在“计算机文化基础”课程教学中借鉴CDIO理念,按照“构思、设计、实现、运行”的步骤,对整本教材进行工程项目的改革,将一个大的项目分解成多个包含各章的知识点的小项目。这样,就可以使学生在学习过程中掌握各个项目的知识,提高自身能力,然后用这种能力来解决实际问题,从而提高学生对知识点的延伸和应用创新能力。
以石油大学出版社出版的“计算机文化基础”为例,首先对整本书进行模块化设计。根据教学大纲的要求,设置九个模块,并设置渐进性与融合性的知识点,同时注意项目内容和实际应用相融合,这样有利于项目化教学的开展。其次,课堂教学依项目进行。按照CDIO的理念重构教材内容,以学生应用项目为主体,把教学内容融入到一个个项目中,每一个项目都按照“构思、设计、实现、运行”的步骤组织实施。在课堂教学中,不是直接把项目的实施方案教给学生,而是启发引导学生按照“构思、设计、实现、运行”的思路主动思考,提出解决问题的方案,自主学习课本上没有的相关知识,以项目组的形式集体完成整个项目。再次,实践教学拓展项目采用小组合作的方式承担实训项目,按照“构思、设计、实现、运行”步骤组织项目实施。项目完成之后,不仅要求学生写出书面总结,还要进行口头汇报与答辩。最后,课程考核多样化。将课程考核贯穿于整个教学过程,最终的考试成绩将包含学生的卷面成绩、实训成绩以及平时各项任务的表现。
具体教学过程设计中教师工作流程如下:确定项目内容确定项目目标整合教学知识点项目实施过程。
具体教学过程实施流程如下:提出项目具体要求和目标小组分工老师讲述项目所需知识点具体实施分组完成小组汇报老师点评知识点拓展总体展示成果评价。
通过这样的教学模式,学生可以边实践、边学习、边思考、边总结,增强自己处理同类问题的能力,同时积累实际操作的经验,养成良好的学习习惯。从项目描述至项目实现部分,均对各单元的知识点进行了清晰的讲解,对于项目中没有涉及的知识点均以拓展知识的形式出现,方便学生以后学习与使用,使学有余力者可以进一步掌握软件的应用技巧,引导学生逐步建立自主学习、终身学习的意识。通过总体展示教学成果,使学生能够巩固所学知识与技能,对自己的学习成果予以评价,并为后续学习做好必要的准备。以山东凯文科技职业学院公共基础课程“计算机文化基础”作为突破口进行教学模式改革之后,我院高职课程教学现有模式得到大大的改进,同时,它也促进了高端技能人才的培养。该模式在我院得到推广之后效果明显,以今年我院学生在期末测评中的表现来看,该课程在整个教学过程中的积极性得到明显提高,学生的学习兴趣比以往更加浓厚。通过上机实践测评发现,学生在实践教学过程中的分析问题、解决问题的能力得到大幅度提升。通过对教材模块化进行改革,学生课程考核的通过率达到90%以上,学生的实际应用能力得到明显增强。
五、结束语
通过“计算机文化基础”课程的改革,发现在教学过程中引入CDIO之后,教学目标由过去的“学科导向”变为“项目导向”,把“学以致考”变为“学以致用”,在教学内容上由“强调学科知识的完备性与系统性”向“注重项目训练的系统性与完整性”转移,在教学方法上由“注重知识的传授”向“注重学生能力培养”转移,较好地实现了在高职公共课培养方案中把培养高技能型专门人才作为教学目标的要求。
参考文献:
[1]娄建玮.CDIO教育理念在高职《计算机文化基础》教学中的应用[J].潍坊高等职业教育,2011(03).
[2]袁良凤.基于CDIO理念的高职计算机应用基础教育人才培养模式探索[J].广西教育,2012(09).
[3]李清平.CEC-CDIO模式下的高职计算机网络技术专业教学改革[J].职业教育研究,2013(02).
[4]张文硕,张有志.以学生科技竞赛为切入点探索引入CDIO的高职教育新模式[A].第2届高等教育科学与工程课程研讨会论文集[C],2012.
一、树立哲学理念,用辩证唯物主义指导教学,培养创新精神
大家都知道中药,为了治疗某一个疾病,不同的医生开出的药方可能是不同的,药方里多味药共同起作用,有的疗效好,有的不太好,而有的医生神秘地加上某味药后,就有了药到病除的神效。在中药的配方里头蕴含着普遍联系的理念:药与药的联系,药与病的联系。同样,知识与知识之间,知识与应用之间也有着内在的关联。在程序设计教学过程中,教师应设计一些具有现实应用价值的任务,它能让学生把与任务有关的知识点紧密联系在一起而形成一张网,在这张网中,既有旧知识,也隐藏着新知识,旧知识某方面的功能得到应用并得以巩固,新知识因为需要而学习,整个网也体现了知识的综合应用。知识的价值在应用中得到了充分体现。教师要在学生熟悉的事物和陌生的事物之间运用类比,找到它们的相似与不相似之处,如生物的进化是生物自身的否定之否定,反映了生物现在与历史之间的、生物与生物之间的联系,在计算机语言中同样有着进化现象,如类型-数组-结构体-类的发展就如同单细胞生物向多细胞生物的进化,无机物向有机物的进化。高阶知识的雏形是基础知识,也是基础知识的合理组合,明了知识之间的血缘关系,学生更加重视基础知识的学习,而对高阶知识的理解就显得容易得多了。在程序设计中,要培养学生的“求异”精神,实现辩证的肯定与否定。教师的讲解不是权威,不是唯一正确答案,鼓励学生进行小修小改,甚至另辟蹊径,找出一个更为睿智的思路,学生的任何思考都应辩证地肯定。学生在另觅思路的过程中,有的想法正确,有的想法错误,其实正确与错误不是绝对的,正确的程序可能在时间或空间上或许有一些问题,而错误的程序只要稍作修改(如语句顺序的改变)就是正确的,有时错误本身是正确的,只是因为它出现的时机或地方不对而已,正确与错误只有一步之遥。学生走过的不可能是一条“直路”,让他们在这条“曲折”的思路上做一回苦行僧,在这条创新的道路上完成一次洗礼,实现自我新的发展。
二、协调左右脑思维,提高科学思维素质,培养创新能力
美国的罗杰.斯佩里教授通过实验证实了左右脑分工理论。大脑分为左半球和右半球,一般左脑具有言语、概念、分析、计算、逻辑推理,将复杂事物细化等功能;右脑具有音乐、绘画、空间几何、想象、创造、综合等功能,右脑最重要的贡献是能进行创造性思维,研究表明右脑具有的巨大潜能并没有被充分利用。现今的计算机语言教学大多都是以左脑为中心的教学,右脑基本处于睡眠状态,而学生的左脑也在抽象与逻辑思维中昏昏欲睡。充分利用右脑惊人的形象思维能力,调动右脑思维的积极性是科学思维的关键。计算机的数字世界是现实世界的一面镜子,现实世界里有什么,数字世界里就有什么,只是表现形式可能不同而已。计算机语言的概念、理论、方法在现实世界里都能找到它的“生活原型”。以概念教学为例,概念的重要性在于它是一种语义规定,弄不清楚就会出现“个个字都认识,句句话都听不懂”的现象,概念教学要加强形象思维。C语言的指针概念是学生的一大难点,对于C系统中这一灵魂性的知识点,“地址”是它的原型,“地址”是一个“范围”概念,它不仅包含开始信息,也包含结束信息,还包含此范围内数据的特征三方面的信息。形象地理解了指针的概念后,对指针的重要性、指针的运算,通过指针获取数据的运算就有了一个“实实在在”的理解。这样的例子举不胜举,如容器与变量,时分秒的变化与循环,族谱与树结构等等。
李政道教授倡导科学与艺术的结合,他邀请画家们“画科学”。爱因斯坦描述他的思维过程是先用形象思维,再将形象思维转换成语言。计算机程序设计既是一门技术,也是一门艺术,在进行程序设计的过程中利用左右脑分工理论,重视右脑功能,并将左右脑“并联”起来协调工作。左脑将复杂的过程进行功能分解,右脑负责过程的形象化,将过程想象成一幅幅形象生动的画面,最后,由左脑负责将画面描述的算法抽象成一个个的语句,最后形成完整的程序。右脑的思维具有无序性、不拘泥于局部的分析,而是统观全局,以大胆猜测跳跃式地前进,达到直觉的结论。在程序设计中有一个很有意思的现象,学生很快地想出了方法,但要求他们用计算机语言描述步骤时,他们却犯了难!步骤难以描述了,甚至在看似简单的顺序结构上也出现了困难,没有了头绪,此时可利用左脑的分析与细化功能对右脑绘制的主要画面做一些重组,变无序为逻辑上的有序,对右脑的思维进行“慢镜头”式的细化,细化到每一个“镜头”都能用一个语句加以描述为止。人的右脑就像一台照相机,将输入大脑的信息以直观的图像加以思考并记忆,“图像记忆”这种右脑特有的机能,是右脑高速海量记忆的奥秘所在。在学习过程中,不妨“模糊性”学习,对接触到的东西先混个眼熟,混个耳熟,有意识地训练右脑的形象记忆与情感记忆,使记忆更生动、长久不忘。人的创新能力与右脑思维密切相关,在左脑的配合下,右脑充分发挥想象力,在一闪念间产生顿悟,将一些看似不相干的知识与知识,知识与应用联系起来,并能进行综合应用。程序设计中不断“求异”的精神,是对右脑思维潜能的充分发挥,使我们的学生成为洋溢着创新欲望、充满活力的人。
关键词:教学方法;语言;设问解答式
“C语言程序设计”是高等学校的公共基础课程,该课程要求学生了解程序设计的基础知识并通过基本的编程训练,培养大学生的计算机应用能力和软件设计的基本能力[1]。C语言程序设计概述(下简称“概述”)是课程的第一讲内容,一般包括计算机程序设计的基本概念、C语言的产生及发展过程和C语言程序设计的特点[2]。作为课程的导入课,“C语言程序设计概述”的课堂教学应该树立起学生对课程的宏观和整体认识,要解释和回答好以下几个问题[3]252:为什么要学这门课?这门课有什么用途?什么是计算机语言?计算机语言和人类自然语言有什么异同?什么是程序设计语言?程序设计语言是什么样的计算机语言?C语言又是什么样的程序设计语言?如何学好C语言?传统的课堂教学往往对上述问题没有完全回答或回答得不好。
2教学内容设计
笔者曾经做了这样一个调查,对正在学习C语言程序设计课程,而且学习已经接近尾声的学生进行问卷调查。75%的学生回答不出来课程有什么用?85%的人不能准确说出“计算机语言”的概念,80%的人不能说出到底什么是“C语言”?70%以上的学生认为没有十足的把握一次通过计算机二级考试。从这个调查问卷,发现笔者的“C语言程序设计”教学真的很失败――学生连最基本的概念都没有掌握,我们感到上好“概述”真的十分重要。教师在讲解“概述”时,一般就是从给学生演示“程序编辑调试”入手,进而讲解C语言的发展,接着讲解C语言程序设计中的数据类型、控制语句等。殊不知,这些学生都是从高中才进入大学,他们对程序设计可能一无所知,乍一接触这些知识,一下子可能无法接受,更有学生从此就失去了学习“C语言程序设计”的兴趣。
2.1设问解答式教学思路[4-6]
“概述”是C语言教学的敲门砖,上好这一节课,直接影响到后续章节的成败。讲述这个内容时,我们首先需要讲解这门课程的重要性,使学生认识到这门课必须要学好。在学生还不知道课程内容时,适当地通过课程提问,逐一分析解决,使学生认识到C语言的强大功能,产生学习的动力,希望学好C语言,了解C语言的学习方法。如图1所示。
2.2承上启下讲解课程的性质
对于学习,人总有一种想法,重要的东西才去学。对任何一门课程,教师必须要跟学生强调这门课程的重要性,从扩充知识体系方面去强调重要性,同时要用通俗的语言来提起学生的兴趣。对于C语言程序 设计,我们采用了如图2所示的讲解方法,使学生初步了解课程的重要性。
2.3层层递进提出问题
设问解答式在教学中已经成为一种流行的教学方法,但在问题设置和解答方面都要有技巧。很多人习惯提的问题是某一讲内容的重点、难点,殊不知,学生还没有开始内容的学习,如何能做到对提出问题有印象,从而做出解答。针对学生对程序设计的了解情况,我们设置以下问题,这些问题层层递进,如果学生了解了这几个问题,那么就对C语言有了一定的了解:
1) 有了丰富的人类语言,为什么还要有计算机语言?
2) 计算机语言有何特征?
3) 程序设计语言是一种什么样的计算机语言?
4) C语言是什么样的程序设计语言?有何特点和作用?
5) 如何学习C语言?
2.4教学方法和技巧――解决问题
2.4.1为什么要学习计算机语言
这是每个计算机初学者遇到的问题,我们利用图3所示的方法来使学生了解计算机语言与人类语言的区别:计算机语言是人与电脑交流的工具,计算机看得懂;而人类的自然语言是人与人交流的工具,计算机不认识。因此我们要指挥计算机做事,就必须要学习计算机的语言。
2.4.2计算机语言家族
有学生认为所有的语言学起来都枯燥无味,计算机语言也不例外。这个时候我们可以列举一下“图灵奖与计算机语言”,如图4为计算机语言的类别,通过讲解让学生了解到计算机语言的大师们对计算机语言的贡献,对计算机及信息技术发展的贡献,使他们感受到计算机语言的魅力,激发学习兴趣。
2.4.3以独特的视角展现“C语言”特色
学生在了解了计算机语言的概念后,肯定很想知道计算机语言的特征,我们抓住学生的心理特点,将C语言的特点总结如下:
1) 严格定义,有严谨的语法;
2) 语义上无二义性;
3) 比自然语言要精简;
4) 是机器可执行的。
在讲解这一部分时,我们一定要注意与人类的自然语言进行对比,使学生留下深刻的印象。
2.4.4层层细化,讲解C语言的发展
当学生了解了“语言”、“计算机语言”之后,接着即可引入“C语言”的相关知识。讲解过程中,我们始终把握联系实际,由浅入深的步骤[3]252-253,如图5展示了讲解思路,采用图示的方式讲解计算机语言的发展过程:
2.4.5图解“程序”的概念
我们一直强调,要计算机做事,要控制计算机,而其中重要的步骤是编写程序、解决问题。理论上说,计算机可以作任何事情,只要把实际问题抽象、制作为可求解的程序,本过程适宜采用如图6所示的图示方式讲解[3]252。
3结语
我们在全校“C语言程序设计”教学中普遍实施上述教学思路,教师和学生普遍感觉收获颇多,特别是加深了学生对C语言的了解,激发了他们学习的兴趣,课堂教学与实验教学效果都比过去有了明显改善。“C语言程序设计”课程在2010年度被评为湖南省精品课程。通过改革教学内容、改进教学方法使C语言教学更适应学生的需求,便于学生循序渐进地学习相关知识和技能[7]。同时在这个过程中,学生会不断地获得成就感,更大地激发起求知欲望,从而培养出独立探索、勇于开拓进取的自学能力。最终使我们的教学更适用于培养学生的创新能力、独立分析问题和解决问题的能力[8]。
注:本文所涉及内容的视频录像可在湖南工业大学“C语言程序设计”省级精品课程网站:218.75. 216.182/vc/850839观看。
参考文献:
[1] 张锦祥. 高级程序设计语言课程教学改革与实践[J]. 浙江教育学院学报,2007(4):71-76.
[2] 谭浩强. C程序设计[M]. 3版. 北京:清华大学出版社,2005:1-12.
[3] 赵娜. C语言程序设计课程教学研究[J]. 科技情报开发与经济,2007,17(8):252-253.
[4] 郭敏,刘会杰.“目标任务型”教学模式在程序设计课程教学中的应用[J]. 河北广播电视大学学报,2007(2):54-56.
[5] 刘小燕,申艳梅.“C语言程序设计”教学方法探析[J]. 计算机教育,2010(6):94-96.
[6] 杨素吟. 设问讲练教学法在教学中的运用[J]. 职业教育研究,2005(8):59-59.
[7] 温雅敏. 数学专业高级语言程序设计课程教学模式改革探讨[J]. 科技经济市场,2008(5):119-120.
[8] 楼蔚松. C语言教学新模式探索[J]. 现代企业文化:理论版,2009(22):191-192.
Based Question and Answer Style’s“C Programming Language Overview”Teaching Content Design
LIU Qiang, LI Changyun, RAO Juhua
(School of Computer and Communication, Hunan University Of Technology, Zhuzhou 412008, China)
[关键词] 计算机语言 程序设计 学生
语言是人类所特有的用来表达意思、交流思想的工具,由语音、词汇和语法构成一定的系统。计算机语言顾名思义是在计算机上使用的语言,是用于编写程序的开发工具,人们把自己的意图用计算机语言编写程序,输入计算机,告诉计算机完成什么任务以及如何完成,达到人对计算机进行控制的目的。计算机语言的种类非常的多,总的来说可以分成机器语言、汇编语言、高级语言三大类。目前,计算机语言发展速度非常快,种类非常多,怎样在短短的一个学期内上好这门课呢?
一、明确教学目的
教师首先应该明确教学目的。这一学期让学生明白都学什么。计算机语言教学是让学生掌握计算机语言的语言特征,学会用计算机语言进行程序设计的技能,培养学生的独立思考能力和一定的自主创新能力。教学过程首先是让学生端正思想,明确学习计算机语言的意义;其次是让学生明白学习计算机语言最终就是要学会用语言来编写程序,为实际工作服务,为人类服务的。而不是死抠那些语法。培养学生利用计算机分析问题和解决问题的能力以及逻辑思维能力。
二、关键是注重计算机思维培养
学生毕竟以前从来都没有接触过计算机语言课,一些解题的思维还停留在高中阶段。形象化方法在教学中作用高级计算机语言虽然同我们生活中自然语言有很多相近的地方,但它毕竟不是自然语言,尤其对于初学者,更是很难在短时间内完全接受和理解。在实际教学中发现有些学生对一些简单的编程问题就是不知从何下手,没有所谓的“计算机思维”,缺乏对基本的计算机关键是注重计算机思维培养所以教师应该注重培养学生的计算机思维。在讲课中,应集中精力对章节的知识结构进行详细阐述、对所要解决的实际问题进行深入剖析,不应花太多的时间放在对语句语法的过多讲解。当遇到实际编程时,需积极引导学生把“要想干什么”的问题,直接转化为“要解决什么”的问题。当问题确定以后,必须选择正确的算法。当然,计算机编程中的算法和数学中的算法存在很大区别,需要教师对学生们的计算机思维进行长期而有针对性的训练和培养。
三、程序设计的教学要考虑“纵”、“横”、“竖”三个方面
这里所讲的“纵”向是指代表语言学角度;“横”向是指计算机角度;“竖”向是指数学逻辑角度。这三个方面的交叉点即为语言的一个知识点。每个语言知识点要按四个角度进行讲解:(1)含义及书写格式;(2)功能和执行;(3)限制与注意点;(4)应用举例。一本程序设计的书看到的无非就是变量、函数、条件语句、循环语句等概念,但要真正能进行编程应用,需要深入理解这些概念,在理解的基础上应用,不要只简单地学习语法、结构,而要吃透针对这些语法、结构的应用例子,做到举一反三,触类旁通。
例如,Visual foxpro中的do while…..enddo结构的讲解,可以按如下步骤进行:
(1)含义及书写形式
Do while
Enddo
(2)功能和执行
1判断条件表达式的值,若为真,则往下执行,否则退出循环。
2执行命令行语句
3重复步骤1和2
(3)限制与注意点
1 do while语句和enddo语句必须成对出现,缺一不可。
2在书写时,do和while之间有空格,end和do之间没有空格。
(4)应用举例
例1:求1+2+3+……+100的和
Sum=0
I=1
Do while i
Sum=sum+i
I=i+1
Enddo
@2,30 say “和=”
@2,40 sum
例2:求2+4+6+…..100的和
Sum=0
I=2
Do while i
Sum=sum+i
I=i+2
Enddo
@2,30 say “和=”
@2,40say sum
执行这两个程序并比较他们之间的区别。
四、知识性和趣味性的结合
常言道:兴趣是最好的老师。兴趣是培养学生程序设计能力的前提,兴趣是学生参与的第一步。孔子说的好:“知之者不如好知者,好知者不如乐知者。”在计算机语言教学中,普遍存在学生对整个语言学习不够重视的情况,很多学生认为反正将来自己不会吃编程这碗饭,从思想上就轻视语言课的学习。另外由于计算机语言自身的抽象、枯燥,语法规则繁琐难记的特点,学生的学习兴趣普遍比较低。再加上课本知识的连贯性非常紧密,前一节的内容没有弄清楚的话,后面的内容将很难进行,如果学生有一节没有听懂,后面的内容就更难听懂,他们就更不愿意听讲,除个别自学能力强爱学习的学生会自己去钻研或请教老师,把不清楚的地方搞清楚,而那些自学能力不强或者自觉性比较差的学生,就可能会因为上课听不懂,而不愿意听讲,课后不看书,这样越不听讲,越不懂,越不懂,越不愿意听,形成一个恶性循环,最后造成放弃这门课程的学习,很是可惜。因此,在程序设计教学中,教师要积极开展和体现程序设计语言的“新奇”,以激发学生的兴趣。既要让学生知道计算机能干什么,有哪些奇特的功能,还要通过程序设计方式来实现一些趣味的内容。
五、程序设计课堂应强调以学生为中心
建构主义的观点认为,学习不是知识经验从外到内的输入过程,而是学习者通过新旧知识经验之间充分的相互作用而“生成”自己的知识的过程,学习要以学习者为中心。这是因为:(1)学习者已有的认知结构是新知识得以生成的前提和基础。(2)新知识的“生成”是通过学习者积极主动的加以活动完成的。(3)学习者需要对学习活动积极主动地进行自我计划,自我监视,自我评价和自我调节。教师应该对所学习内容进行设计,设计出有价值、有意义的问题,引导学生通过概括、分析、推理来建构起这些相关的知识。
总之,计算机语言类课程作为一门重要基础课程,不仅要求教师能够以身作则,不断用新知识、新理论充实自己,努力提高自身的综合素质,强化教学意识,而且要求教师在教学过程中能很好地把握大学生的特点,勇于探索,大胆改革,在教学实践活动中不断改进教学方法、提升教学艺术,千方百计挖掘学生潜能,为学生提供各种形式展示自己聪明才智的机会和场所,强化素质教育,最终真正实现提高教学质量的目的。
关键词:拓展式教学;计算机语言课程;教学研究
中图分类号:G424 文献标识码:A文章编号:1009-3044(2011)31-
Discussion on Extensive Teaching Method of Computer Language Course
CHEN Guo-chao
(Sichuan Institute of Technology, Zigong 643000, China)
Abstract: In the teaching of computer language courses for the student not majoring computer, the author breaks the limit of textbook and begins with the study of the computer software for the perspective of the system resources. The essay, combined with the author's teaching practices for years, discusses the purpose, the significance and specific implementation scheme of the method for computer language extensive teaching.
Key words: extensive teaching; computer language course; teaching and research
拓展式教学是对教学内容、形式、方法等进行延伸挖掘并揭示其本质,透彻研究问题,使学生能够灵活变通、准确地进行理解、巩固教学内容。这种突破教材约束的教学方式,有助于激发学生学习的主动性,培养学生的创造性思维能力,促使学生敢于探索问题并解决问题。
计算机语言课程是高校非计算机专业本科生的必修课程,多数学生学习计算机语言比较吃力,在课程后期少数学生无法跟上老师的教学进度。在计算机语言教学过程中,经过长期的实践和摸索,引入了拓展式教学方法,取得了良好的教学效果。
学生在学习计算机高级语言之前虽然已经学过计算机基础知识,但许多学生对计算机知识的理解仅仅停留在概念上,没有应用于实践,对计算机系统的认识没有质的提高。学生在计算机语言的学习中,通过教师的拓展式教学,可以加深对计算机基本概念、专用术语的理解,提高对计算机体系结构的认识水平,并在编程中付诸于实践。
计算机语言课程中的难点和重点是:内存变量、数组、指针、程序设计和算法等,下面就这个方面探讨拓展式教学方法。
1 由内存储器结构拓展到内存变量和指针
在计算机高级语言教材中,涉及内存变量和指针的章节很少提及内存储器结构。教师应突破教材的限制,在引入内存变量和指针之前,先讲解计算机内存储器的相关知识,随后由计算机内存储结构拓展到内存变量和指针。
讲解内存储器的组织结构,用如图1所示的简图来说明。每个矩形格就是一个存储单元,每个存储单元在计算机高级语言中称为一个内存变量。存储单元是临时存储数据的空间,数据存入哪个存储单元或从哪个存储单元取出数据,必须明确存储单元的地址,而2000H,2001H就是存储单元的地址。在计算机高级语言程序设计中,无需明确具体的存储地址,存储单元的地址只需用符号来表示,这就是内存变量名,内存变量名需要程序设计者来定义。
图1 内存储器结构简图
在计算机高级语言中,将地址形象化地称为“指针”,一个变量的地址称为该变量的“指针”。存储数据的单元就是变量,存储地址的单元就是指针变量。
内存变量和指针的使用贯穿于计算机高级语言程序设计的始终,对内存变量和指针认识模糊或认识不深入,在以后的程序设计中就不能合理使用,从而影响程序设计的学习。教师通过教学内容的拓展,把抽象的变量和物理存储器联系起来,帮助学生看清了内存变量和指针的本质,加深了对内存储器结构的认识。
2 由“存储程序”原理拓展到程序设计
由于计算机高级语言源程序是基于计算机硬件执行的,在计算机高级语言程序设计教学过程中,教师要突出和强调“存储程序”原理的讲解。
“存储程序”原理可以借助微型计算机结构简图来说明,如图2所示。程序运行之前,首先把程序调入内存储器,然后在系统的控制下,从内存储器中逐条取出指令加以分析,并执行指令规定的操作,使计算机按程序流程运行直至结束,从而实现自动化的连续工作。
图2 微型计算机结构简图
基于“存储程序”原理的拓展,教师讲解编程计算cgc3.tif时,让学生明白:计算机处理数据是分步骤完成的,本例计算100个数的累加和,需要计算100次,可用循环语句来实现。
通过科学、合理的教学内容拓展,学生能够准确地理解教学内容,逐渐地养成计算机的思维习惯,学会用算法分析问题、解决问题。同时,学生加深了对冯・诺依曼体系结构的理解,对计算机体系结构的认识上升到一个新高度,为以后合理、高效地使用计算机解决本专业的问题打下良好的基础。
3 从硬件资源的高度认识程序设计
大多数学生编写程序只追求任务的实现,忽略程序运行的效率。教师讲解程序设计时,引入“计算机硬件资源”等教学内容,引导学生不但要学会编写程序,而且在满足正确性、可靠性、健壮性等质量因素的前提下设法提高程序的效率。
最主要的计算机硬件资源是计算资源和存储资源,计算资源就是CPU(中央处理器),存储资源包括内存储器和外存储器。高效的程序是指程序运行时尽可能少占用CPU的时间,减少无谓的时间消耗,让计算资源可以被更多的任务利用,提高计算资源的利用率。
例如,编程计算 (n是正整数)。许多学生编程时,使用循环语句来实现,但是,当n的值很大时,会耗费CPU的大量时间。如果把计算式修改成
,则。通过这个例子,让学生明白最好不要把所有计算任务都交给计算机完成,有些计算任务需要程序员提前处理,让出更多宝贵的计算机资源给计算机用户。
通过“计算机硬件资源”的拓展,借助于计算机高级语言教学平台,实现计算机基础知识和上机实践的有机结合,培养学生不但具有基本的编程能力,而且树立高屋建瓴、系统全局的思想,为计算机在本专业中的应用提供指导。
4 总结
高校开设计算机高级语言课程的目的:培养学生掌握编程的基本知识、初步的程序设计能力和基本的程序调试技能。教师在教学过程中,不要局限于教材的限制,通过教学内容的拓展,讲解和程序设计相关的基本知识、基本理论,不但有助于激发学生学习高级语言的热情,而且有利于学生深入理解计算机体系结构,提升对计算机的认识高度。
参考文献:
[1] 张晓萌.关于结构力学拓展式课堂教学的思考[J].科教文汇,2009(23).
[2] 薛永宁.高职院校《数据库原理与应用》教学拓展探讨[J].硅谷,2009(24).
关键词:高职院校;计算机专业;入门语言
高职院校计算机专业开设的计算机入门语言课,是计算机专业学生学习的第一门计算机语言,入门语言重点讲授程序设计的基本概念与方法,通过入门语言的学习,要将学生引入程序设计的大门,为今后进一步深入学习程序设计打下良好的基础,如果第一门计算机语言学习不好,将直接影响学生后续课程的学习,使得学生很难在专业上有进一步的发展。当前,随着高职院校计算机专业学生就业新形势的出现和计算机软件新技术的出现,使得高职计算机专业入门语言应根据新形势的需要进行适当的改革,以适应新形势的发展需要。
一、入门语言种类的调整,由c语言转换为c++语言
c语言是最具代表性的面向过程的程序设计语言,其功能强大,语法灵活,一直深受程序员的喜爱。正因为如此,多少年来几乎各类高等院校都将C语言作为高校学生的入门语言,这也成就了谭浩强先生的经典教材《c语言程序设计》800万册销量的奇迹。然而,当前随着新形势的出现,应该用C++语言取代C语言作为学生的新的入门语言。由三点原因决定了对这种课程设置改革的必要性。
1 “2+1”人才培养模式要求我们在课程设置上要更加紧凑,在衔接上要更加紧密。
当前高职计算机专业为了提高学生的职业技能,采用以顶岗实习为突出特征的“2+1”人才培养模式,即前两年的理论学习加第三年的顶岗实习。因此学生在校实际学习理论课程的时间只有两年,在校学习时间的缩短,要求计算机语言课程衔接更加紧密。
2 C++是在c语言的基础上发展而来的,它完全兼容于C语言,传统的课程设置方式开设完C语言一年后再开设C++,就要花费20学时的时间来讲C的内容,讲授的内容完全相同,这其实是课程设置的一种重叠。
3 当前C++语言体现“面向对象”技术是软件行业的主流技术,与其先向学生灌输C语言的“面向过程”的编程思想,将来再让他们去转变这种已经深入内心的思想,不如一开始就把最先进的程序设计思想传授给学生。
二、授课时做到语言丰富,生动、通俗易懂,用一些经典的例子和恰当的比喻贯穿始终
C++作为一种高级计算机语言,有自身的特点,C++语言的设计者之一斯坦・利普曼先生曾在《C++Primer》一书中指出“C++是最为难学的高级程序设计语言之一”,因为C++牵涉概念繁多,语法比较复杂,体系结构的庞大,很多概念非常抽象,将其作为入门语言,学生学习的过程中,会遇到很多困难。在这种情况下如果再语言单一,枯燥地讲解各种晦涩的语法知识,会使课堂沉闷,大大降低学生的学习兴趣。所以讲授C++程序设计时要做到语言丰富、生动、通俗易懂,用一些经典的例子和恰当的比喻贯穿始终,营造出和谐愉快的课堂氛围,这样才能让学生体会到在轻松的环境中获取知识的乐趣。其中选择经典的例子和恰当的比喻非常重要,它们不但可以使抽象的知识容易理解,还可以提高学生的兴趣,提高学习效率。比如,多态性是面向对象思想中的重要特征,但其概念描述为不同的对象接受了相同的命令产生不同的行为却非常抽象,不易理解。为了理解这一概念,可以利用上课铃声响起这一同样命令被教师和学生两种不同对象接收后,产生了教师走上讲台准备授课,学生安静坐好准备听课这两种不同的行为,这就是现实世界中多态性的实例。利用这样的现实例子,会很容易地理解类似的抽象概念。
三、笔试与上机相结合的过程化考核方式的使用
考核是教学活动中十分重要的环节,通过考核可以检验学生的学习成果。传统的程序设计课程的考试都采用期末笔试答卷的方式进行。然而以期末笔试的考核方式有两点明显的不足:第一,学习程序设计的最终目的是使用计算机进行编写程序来解决实际问题,而笔试只能考察理论知识掌握的水平,无法衡量知识的运用能力,单靠笔试的方式衡量学生计算机语言的运用水平本身就不准确。第二,一学期的学习,单靠最后一次期末考试考核学生的成绩,导致平时相当数目的学生对学习投入不够,以考前突击的方式应对考试。因为各方面能力的培养都需要一个过程,短时间的突击不但导致所学知识不够扎实,更对学生的知识运用能力与素质能力的培养毫无帮助,这也是以期末考试考核学生的成绩的最大弊端。
过程化考核是一种新型的考核方式,它是在学习的过程中对学生进行多次的分阶段,多种形式的测验,得到最终的学习成绩,这种考察方式不但较为客观地衡量出学生对知识的掌握与运用水平,还通过多次的考核时时激励学生,在学习的过程中始终怀着严谨的态度和饱满的热情,获得最佳的学习效果。《C++程序设计》课程的过程化考核采用笔试与上机相结合的方式进行,两次笔试重点考察学生的理论的掌握水平,四次上机考核重点衡量学生的知识实际运用水平,六次考核都在理论课与实验课的课堂完成。这种多次的阶段性考核措施保证了学生的学习热情与投入程度,在实际使用中取得了很好的教学效果。
四、恰当学习情境支撑抽象的理论知识
学习情境是指为学生提供一个完整、真实的问题背景,以此为支撑物启动教学。一个恰当的教学情境,是激励学生主动参与学习的根本保证,学习情境的创设是教学设计中的一个重要环节。在C++程序设计这门课程中主要可以创设两种学习情境: