首页 > 文章中心 > 计算机程序设计语言

计算机程序设计语言

计算机程序设计语言

计算机程序设计语言范文第1篇

摘要:“计算机程序设计语言”课程是计算机科学与技术学科核心的课程之一,极大地影响着学生对计算机领域的理解和兴趣。本文针对教学过程中存在的问题,提出了层次化教学目标思想。以面向对象语言C++为例,介绍基于层次化教学目标体系的具体思想和内容,并提出与之相适用的课程及实验设计,达到优化教学方法,提高教学质量的目的。

关键词:计算机程序设计语言;层次化教学;C++

中图分类号:G642

文献标识码:A

1“计算机程序设计语言”教学现状

“计算机程序设计语言”是普通高校计算机教育的基本专业课程,在计算机领域的各个专业的课程体系中都处于核心的地位。这门课程不仅可使学生获得基本的程序设计能力及锻炼学生的逻辑思维能力,它还极大地影响着学生对计算机领域的兴趣和理解,对引导和培养学生在计算机工程及理论方面的研究兴趣起着先导性和基础性的作用。因此,“计算机程序设计语言”的教学质量成为影响大学本科计算机教学质量和效果的一个关键的因素。

影响课程教学质量的主要三个因素为教学内容、教学方法和实验设计。当前,大部分教师受传统教学模式的影响,教学的重点都放在程序语言的基本语法的讲授,课堂所设计的程序实例大部分围绕语法规则的演示和说明,这种模式同样也影响到实验环节的设计。这种就事论事,形而上学的教学模式具有许多明显的弊端,主要体现在以下几方面:

(1) 不利于培养学生的学习兴趣

许多从事程序设计语言教学的教师(包括笔者)都有这样的感受:每讲授一门新的程序设计语言课,初期学生都抱着积极,对获取知识的极大热情投入课程的学习,但随着教学过程的深入,这种热情往往不能持久。导致这种局面的原因固然有教师本身的教学方法和教学手段的缺陷,但根本原因还是教学内容的设置不科学。在单纯以讲授语法规则这种教学模式下,学生难以保持长久的学习兴趣和动力。

(2) 不利于学生建立综合化,系统化的知识体系

程序设计语言是表达设计者思想和计算机计算逻辑的符号系统,具有多层面、多视角的内涵。要把学生培养为具有高素质的程序设计人员,仅仅熟悉没有精神的符号及符号规则远远不够,这需要学生具备设计高质量程序的综合化的知识体系,而当前的程序设计语言的教学现状并不能满足这种需求。

(3) 不利于培养学生解决实际问题的综合能力及创新意识和思想

当前,素质教育成为各级教育系统,包括高等院校所关注的热点,知识高等院校所关注的“素质”内涵不同。笔者认为高校大学毕业生应具备的素质包括:综合化、系统化的专业知识体系;应有已有的知识体系解决实际问题的能力;具有创新的意识和思想。总体而言,大部分教师对程序设计语言课程所采取的教学不利于这种素质的培养。

针对这种现状,结合我国高等教育发展的现状,本文提出程序设计语言的层次化教学目标的思想,并以面向对象程序语言为例,论述在层次化教学目标驱动下的课程设计。

2层次化的教学目标

各项教学活动有效展开的基本条件是合理的教学目标的确定,但单一的教学目标并不能适用当前中国复杂的高等教育现状。社会经济的快速发展产生了明显的多类型、层次化的人才需求,这种趋势在各类软件公司里表现得尤其明显。为了适用这种人才需求的转变,高等教育领域在这些年相应地发生了巨大的变化,各种类型、各种不同层次的教育机构大量出现,改变了过去高等教育机构单纯负责培养具有从事复杂脑力劳动的高级专业人才的状况。这些变化最终体现为教师的工作,体现为教师针对不同的教学对象所制定的教学目标体系。

当前,由于社会信息化的发展,各类计算机类课程已经渗透到各个学科,例如笔者所在的苏州大学,几乎所有的院系都设置了信息技术类的有关课程,大约超过一半的院系设置了“计算机程序设计语言”的课程,因此“计算机语言设计课程”的教学质量是总体教学质量评估的重要组成部分。笔者多年来一直在苏州大学承担程序设计语言的课程,包括一类本科计算机专业基础课程、二类本科专业基础课和公共基础课程。大量的教学实践表明单一的教学目标不能适用多样化的教学对象、多样化的人才需求和程序设计语言知识逻辑在广度和深度方面所具有的层次化的特点。下面将论述程序设计语言课程的层次化的教学目标体系及各层的具体内涵。

2.1低级目标

该目标要求掌握标准化的程序语言语法体系,以学生掌握基本的标准语法体系为基本要求,并能初步应用语言开发较小型的简单应用程序,具备初步的程序设计能力。低级目标要使得学生对所学知识“知其然”,课程教学内容主要围绕标准的语法规则,课堂和实验环节所选定的程序实例大多围绕着验证和演示语法规则及语法规则之间的联系进行设计。在以低级目标驱动的教学中,因为重在基本知识的传授,因此核心教学内容的选择是第一位的要素。当然每门程序设计语言课程都有其固有的核心内容,例如,在C++语言中,核心的教学内容为:面向对象的概念、继承、多态、模板及异常等,即使如此,还需要根据教学对象,对教学内容和授课方式进行选择和取舍。总的原则是围绕重点概念和知识采取“精讲多练”和“突出重点”的方式进行教学。

2.2中级目标

中级目标则要要求学生围绕目标程序设计语言,具备系统化的程序设计方法和技巧,逐渐使学生“知其所以然”。该层目标不仅要让学生掌握“语法”,还要让学生掌握“语义”;不仅让学生掌握语言本身,还要让学生扩展思维,了解、理解更多的外延的知识;不仅要让学生掌握基本的程序设计方法,要让学生初步掌握系统化的程序设计方法和建立起程序质量的观点。程序设计语言的外延知识涉及计算机专业许多重要的核心课程,包括编译原理、算法分析与设计、计算机组成与结构、离散数学、数据结构和软件工程等。当然,不可能指望通过一门课程的学习,使学生有效地、完整地掌握所有这些知识,只能使与实现中级目标有紧密联系的知识能渗入到重点的知识讲授和实验的安排中。

2.3高级目标

不管是初级目标的“知其然”,还是中级目标的“知其所以然”,都是知识学习,而高级目标阶段的重点是运用知识,体验知识,要求学生具备利用目标程序设计语言解决一定复杂度和规模的实际问题的能力,建立抽象的程序设计思想、方法和质量的观点。高级目标的教学内容的重点在如何在所讲授的语言框架里解决一定规模的应用问题,并从具体的实现里提炼出抽象的设计思想,分析实现的质量,总结好的实现方法和设计思想。

确立了教学目标,下一步的焦点为围绕实现具体的教学目标,制定各教学环节的具体的教学内容和教学手段,主要包括课堂教学环节和上机实践环节。结合笔者的教学实践,下一节将围绕这方面的内容展开论述。

3层次化的目标引导的课程设计

C++语言因其强大的功能及广泛的实用性而日益成为当前高校理工类专业程序设计的主流教学语言,因此本节将以C++为例,讨论层次化教学目标思想如何在教学实践中得到贯彻。C++程序设计语言的教学涉及课堂教学和实践教学两个环节,下面将就这两方面展开论述。

3.1课堂教学

确定目标课程的教学内容是开展有效的课堂教学,取得既定的教学目标的前提和基本要求。针对本文所提出的层次化的教学目标体系的基本内涵,C++程序语言的课堂教学内容在深度和广度上也应该展现出层次化,递进性的特点。

在低级目标中,掌握本程序语言的基本语法体系是最重要的目标,在教学内容的设计上,应确定语言的最核心最重要的语法现象。过程化程序设计向对象化程序设计是C++语言的最重要的特征,因此“对象”和“类”,以及由此产生的“继承”,“封装”,“多态”和“异常” 成为最核心的教学内容。在教学时应集中注意力于这些类对象的关键个性技术,围绕关键技术“精讲多练”,使学生深刻理解面向对象C++的这些关键技术;要有重点,不能面面俱到,有所失,才能有所得。

低级目标是为了使学生掌握知识,使其“知其然”,那么中级目标则要逐渐使受教育者“知其所以然”,教学的重点从对语法的训练转向对语义的理解,包括静态结构语义和程序执行语义。在C++的教学中,以C++对象模型作为教学内容的重点,通过从静态的程序代码结构和运行的程序状态两方面展开课堂教学,这样在知识语言的“所以然”的基础上,学生不仅知道什么是“多态”,并且知识“多态”是怎么实现的;什么是运行时类型检查(RTTI),运行时类型检查能提供什么程序设计策略等;许多的外延知识能沿课堂展开,例如编译原理、算法分析与设计等。由Stanley B. Lippman所著的《Inside The C++ Object Model》为我们设计课程材料提供了方向性的指导。

低级目标和中级目标都是针对知识的学习,而高级目标则针对知识运用,提高运用知识进行设计的能力。此层次涉及知识的学习、理解和综合运用,要在有限的时间内,实现教学目标,在课程教学内容的选取和设计及课时的安排上,具有一定的难度,对教者和学者都具有一定的挑战性。“设计模式”可以成为本层次的基本或延展性的教学内容。设计模式虽然不与具体的设计语言有着必然的、密切的联系,但事实上各种技术性、或纯教学性的书籍中,都把面向对象语言作为实现各种设计思想的不二选择。通过设计模式内容的讲授,可以使得学生对面向对象的基础知识有更深刻的理解,同时增强灵活运用所学知识的能力,体验面向对象程序设计方法学所带来的设计上的“美”,激发学生的创造力。

当然,上面针对课堂教学内容的论述仅仅进行了基本的界定和论述,需要通过下面几方面来贯彻实施,以达到各个层次的教学目标:

(1) 通过教者的努力,设计出丰富的、具体的课程素材;

(2) 针对不同的教学内容,设计多样化的教学手段和方法;

(3) 针对不同的教学内容布置合理的作业和考核方法。

3.2实践教学

在程序设计语言的教学中,课堂教学和上机实践教学是并重的环节,不可偏废,一起决定着教学的质量和教学目标的取得。如何设计安排上机环节通过大量的教学实践,已经总结出了大量的行之有效的方法。下文就实验内容及实验的组织形式进行一些必要的、有益的讨论。

结合课堂内容,以往的实践环节主要由学生编制一些小的程序,进行语法现象的演示及验证。但笔者通过大量的教学实践发现:这种普遍采用的,且行之有效的方法,对于学生巩固知识,提高调试程序的能力和技巧具有显著的效果。但随着教学的深入,这种方法也显示出种种的弊端,例如:学生专著于知识点,必然缺乏对知识的整体把握;学生容不易形成良好的编程习惯等。针对这种情况,笔者在实践的环节中,增加“读程序”的分量。教师提供一些高质量的程序范例让学生进行阅读、理解,并对范例的程序风格和设计方法进行总结比较,以提高学者的综合能力,尤其是到了后期,所提供的范例更具有综合性、全面性和示范性,能极大地提高学生掌握知识的深度和广度,激发他们的学习热情。

在实践人员的组织形式上,一般在程序设计语言的教学中,都是学生独立进行的。在教学实践中,也可引进一些软件开发中的方法,比如采用小组制的形式,根据实践内容的不同,小组或大或小。即使是在低层目标为导向的教学中,也可采用小组的方法进行实践环节的教学,不过此时小组人数不宜过多,最佳数目为二人。采用这样的方法,有以下的益处:

(1) 便于学生进行交流,以达到取长补短的目的;

(2) 提高教学效率,以较少教学活动取得同样甚至更好的效果;

(3) 培养团队合作精神等。

在以中级和高级目标为导向的教学中,实践环节应从语法演示和验证为重点转变为以知识的理解和知识的运用为重点,因此除了结合教学内容设计相应的实践内容外,最显著的特点是增加综合性的项目开发环节,以达到知识的综合掌握和运用。

当前以语法的演示和验证目的实践环节的设计具有大量的教学实践可资借鉴和学习,但针对更高两层教学目标的实践环节则缺乏有效的素材和经验可以利用,需要通过进一步的教学实践活动加以积累和总结。当前的一些做法是借用开发一个具有一定规模的项目来弥补纯语法的演示和验证实践方法的不足。

4结论

本文针对当前在程序设计语言的教学中存在的问题,提出了多层次教学目标的观念,并介绍了各层次目标的具体内容和以此目标为导向的主要的教学环节的设计。各个层次的教学内容和教学方法手段并不是彼此割裂的,如何针对各种不同的教学对象进行合理的课程设计,以提高教学质量有待于进一步的大量的教学实践活动。下一步最主要的工作总结探索各种教学资源以及相应的考核方法,尤其是用于中级目标和高级目标为导向的教学活动。

参考文献:

[1] 吴乃陵. 面向对象C++程序设计教学改革[J]. 电气电子教学学报,2003,25(2):9-11.

[2] 徐宏,聂影,黄征华,等. 计算机程序设计语言的教学探索[J]. 教学研究,2004(2):89-93.

[3] 沈军. 程序设计语言类课程的教学思路研究[J]. 高等工程教育研究,2001(1):80-82.

[4] Stanley B. Lippman. Inside The C++ Object Model [M]. Addison-Wesley Publisher, 1996.

[5] Erich Gamma, Richard Helm, Ralph Johnson ,et al. Design Pattern: Elements of Reusable Object Oriented Software [M]. Addison-Wesley Publisher,1995.

Research on Teaching of Programming Language

CHEN Dong-huo,YAO Wang-shu

(School of Computer Science and Technology, Soochow University, Suzhou 215006, China )

计算机程序设计语言范文第2篇

关键词:VB;程序设计;教学改革

中图分类号:G642文献标识码:A文章编号:1009-3044(2008)14-20906-02

1 引言

计算机程序设计作为中职学校计算机专业的核心课程之一,对提高学生掌握基本的编程能力、培养他们的逻辑思维能力具有很重要的作用,同时也为他们的后续学习打下了坚实的基础。但对于目前基础相对较差,文化沉淀比较薄弱的中职生来说,往往对这一门课程持有恐惧感、厌学心理,怎样调动中职学生对程序设计语言的兴趣,提高他们的学习效率成为中职计算机教师们的共同关注点。本文分析了当前计算机程序设计课程中存在的问题,并结合教学实践,提出了改进方法。

2 目前中职学生的学习现状分析

本人担任计算机程序设计课程多年,先后执教过QBASIC、Visual Basic、Visual FoxPro课程,发现学生刚开始兴趣普遍很高,但是只要讲到抽象的理论知识时,他们却望而生畏,信心大减,慢慢的产生了厌学情绪。往往一学期下来,一个班级只有几个同学跟着学下去,其他同学都是半途终止,最后教学效果可想而知。

究其原因,很多教师认为学生基础薄弱、不想看书,不善于思考,也不喜欢提问等等诸多问题,但这都是目前我们面对的客观条件。抛开学生自身的原因,会发现我们自身有两个问题不容忽视。

2.1 教学模式单一,课堂教学枯燥无味,制约了学生的积极性和主动性的发挥

教学过程是教师的教与学生学的有机结合。在教学过程中我们不但要考虑所教的内容,更重要的是要考虑我们所教对象的原有知识水平与采取什么样的教学方法才能充分地调动学生的积极性和主观能动性。然而在调查中发现不少教师采用的还是传统的教学方法,即依书本内容按部就班地讲给学生的“灌输式”方法或“一言堂”,这些方法对那些自觉性比较好、基本功比较扎实的学生来说,或许还能起一定的效果,但对那些刚跨入校门,对计算机充满激情和向往而基础又比较薄弱的中职生来说,是一种“扼杀”。因为当他们经常面对枯燥的说教,看不懂的英语,陌生的语句结构时,他们的兴趣和信心会一扫而光。这是一种非常可怕的事情,可想而知,这样的教学效果对将来更深层次的计算机教学留下的后遗症是深刻的。

2.2 多数教师自身水平有待提高,往往不具备丰富的实践编程经验

在教学过程中,许多教师不能灵活把握教材的内容深度,重点不突出,条理不清楚,课程目标不明确,以“照本宣科”方式教学。特别是遇到那些抽象的知识,不讲吧,属于教材内容,并且也很重要,是基础,讲吧,很枯燥、乏味,学生听不懂。因此面对这个问题许多老师都束手无策,最后导致学生学不会,并且严重打击了他们的积极性。另外,学好计算机程序设计贵在理论与实践相结合,由于教师缺少实际编程经验,往往只能局限于课本上的实例教学,而不能给出大量与实际工作紧密联系的程序代码以供学生联系,那么也就不能教给学生好的编程经验,养成好的编程习惯。

3 积极采取的实践措施和效果

针对以上问题和原因,要使Visual Basic的教学能充分调动学生的学习积极性,改变以前的难学难教局面,提高教学效果,我曾尝试从教学内容的选取、教学方法的改进、教学理念的更新和提高自身水平等方面着手来解决,并取得良好的教学效果。

3.1 在教材内容取舍上,灵活多变,充分考虑中职学生的特点

教材内容的修改和调整方面主要是从学生的实际兴趣和接受能力出发的,经调查发现学生对逻辑性强的知识(如数学方面和逻辑推理方面等)比较薄弱,甚至有一种敬畏害怕的感觉,但他们对颜色、图形和动画等方面比较感兴趣。因此,在教学过程中,我们强调“实用”两字,灵活多变,以学生的兴趣为中心,以能调动学生的积极性和主动性为出发点,以训练学生的思维能力、想象能力和动手能力为目标。在内容处理上,敢于打破教材的体系结构,先易后难,先实例后知识,在实例中穿插讲解一些函数、循环和选择语句等知识,以问题引出学习知识点,以兴趣带动学生主动学习。通过对比教学发现,学生们更容易对程序设计产生兴趣,在掌握函数、数组、程序结构等以前难以掌握的知识方面所花费的时间要少得多,而且掌握得更加扎实牢靠。

3.2 在教学方法上,多“管”齐下,调动学生的学习积极性和创造性

我在教学过程中主要采用讲授法、讨论法、课题式教学法、多媒体教学法等。对于基础知识的讲解主要采用讲授法,通过精讲加巧练,使学生达到对基础知识的掌握和加深对新知识的理解。对上机操作课,主要采用讨论法,因为Visual Basic是一门逻辑性和操作性很强的课程,同一个问题的解决方法会有多种,通过讨论,一方面可以促进学生积极参与,加强对新知识的巩固和探索,拓宽知识面;另一方面,可以充分地激发学生的创新意识。课题式教学法也主要是用在上机课上,做到每课时一个专题(包括例题和练习)。多媒体教学法则通过制作一些幻灯片,融入一些文本、声音、图形、图像和动画等,使讲解的内容和操作的过程以一种全新的面貌展现在学生面前,使学生更易于接受和消化所学的知识。

3.3 在教学理念上,以学生为本,充分尊重学生的需要

传统的课堂教学着眼于学科与知识,教师是绝对的权威,掌握着教材和学生,教师注重的是对知识的传授与技能的培养,最大愿望是让学生最大程度地掌握相关学科的知识与技能,在考试时能考出一个好成绩。新的教学理念强调在教学过程中教师应与学生积极互动、共同发展,注意培养学生的独立性和自主性,引导学生质疑、调查、探究,促进学生在教师指导下主动、富有个性学习。同时教师要尊重学生的人格,关注个体差异,满足不同学生的学习需要,创设能引导学生主动参与的教育环境,激发学生的学习积极性。

3.4 积极提高自身的知识水平

由于计算机技术的发展迅猛,知识的更新非常快,教师自身的知识储备也在某种程度上决定着教学质量的高低,仅仅围绕课本讲清楚几个例题和习题是远远不够的,特别是实践经验会帮助他们如何整体把握教材目标、内容、重点,选择合适教学方法。教师平时应多参加社会实践活动,积累编程经验,博览群书扩充知识结构体系,研究并采纳良好的教学方法,用别具一格、生动有趣的课堂氛围去赢得学生的信赖与喜好,让学生带着兴趣学,快乐地学,才会收到好的教学效果。

3.5 考核方式多样化

课程考核方式应灵活多样,传统的笔试不能完全真实地反映学生学习效果,何况Visual Basic程序设计课程本身是集理论学习与动手操作于一体的课程,我们不能一味地追求理论知识,而忽视动手操作能力,因此,应对学生的评价贯穿到整个学期的课程学习中。具体如下表:

其中项目设计考核为学期结束进行,教师提供部分设计课题,学生也可以自选。学生分组承担课题任务,小组的每个成员应分担不同的功能模块,考核时,采用小组答辩的方式,并形成文字材料,这样有利于在教学的实施过程中,强化学生“学为所用”的意识,而不是“学为所考”的目的,让学生更注重学习的过程,而不是考试的结果,学生在参与学习的过程中,应培养他们探索科学的精神,严谨的科学态度,而学生只要是认真、深入地参与了学习的每一个环节并完成每个环节所布置的任务,就一定可以收到好的学习效果。

4 结束语

学校是教书育人的地方,既然学生选择了我们,我们就不要一味埋怨,回避现实,以积极地心态去面对他们。在今后的教学过程中,要认真思考、积极探索、大胆创新、勇于实践,去寻求适合学生发展的教学模式和教学方法,努力提高教育教学质量。

参考文献:

[1] 陈赣浪. VB程序设计课程的教学方法和教学手段初探[J]. 湖北广播电视大学学报,2007.5.

[2] 陈云平. VB程序设计教学改革初探[J]. 电脑知识与技术,2007.15(2):(878-879).

计算机程序设计语言范文第3篇

C++语言是在C语言基础上发展而来的一门面向对象的高级语言。教无定法,教学有法。对于计算机专业大学生的C++程序设计语言教学方法,必须结合当前大学生基础和实际情况,进行教学方法改革和教学模式创新,提高教学质量和效果,使得计算机专业大学生不但能够掌握面向对象的理论知识,而且具有一定的可视化编程与调试能力,实现理论与实践相结合,达到工程应用型的实用人才水平。如何在有限的学时内使得大学生能够找到科学的创新学习方法[4],尽快掌握C++语言基本理论和具备编程能力,是每位任课教师都需要面临的难题。

二、教学模式创新

为了培养面向工程应用的C++程序设计人才,在知识、能力、应用、创新等各方面全面培养大学生,本文提出“双主互动为纲、两个创新、两个学习、两个支持、四个课堂”的教学模式,使得学生能够达到掌握理论知识和具备编程能力的工程应用水平。教学模式创新的基本框架如图1所示。

本课题组的教学模式采用双主互动教学为纲,即基于师生互动的教师主导学习和学生自主学习。两个创新是指对教学内容和教学方法分别进行创新。教学内容创新是指教师对教学内容进行梳理分解,突出重点,并及时将新内容、新科研成果、新概念、新技术等内容补充进来,改善课程知识结构,以适应社会对计算机编程人才的需求。教学方法创新是指采用互动式、全方位的教学方法,进行理论与实践相结合、教学与科研相结合、课内与课外相结合。两个学习是指将学生分成多个小组进行讨论学习、对C++的开发环境进行学习,使得学生面向学以致用的培养环境。两个支持是指教师要采用各种手段和方法对学生的学习进行指导支持,包括面授支持、电话支持、e-mail和QQ等网络支持。四个课堂是指理论教学课堂、上机实践课堂、课程设计课堂和其它课余时间的课堂。

三、采用自然语言启发式教学方法,提高学生理解能力

C++语言是一门计算机程序设计语言。C++语言教材从前到后系统性特别强,前后章节之间环环相扣,联系紧密。由于面向对象的很多新的概念比较抽象,如果教师在教学中仅仅把教材上的语法知识照本宣科地讲给学生听,会导致下面大部分学生听不懂,学生会很容易感到枯燥乏味和厌倦疲劳,从而产生排斥和厌学情绪。这种抵抗情绪一旦从开始就产生,则将影响后续整个学期的教学效果。由于从头到尾都听不懂,老师在课堂上提出的问题学生也无法进行互动,这种灌输式的教学方法效果非常差。而教师要根据课堂实际情况,采用互动式教学方法,培养学生的主动学习能力,才能得到良好的教学效果。

1.第一次课程教学中,明确C++语言课程的重要性

目前C++语言是大多数电子、信息、计算机相关专业的非常重要的程序设计课程,也是这些大学生后续专业课学习、毕业设计、以后上研究生或参加工作进行计算机软件和IT开发的主要编程语言,广泛应用于软件设计和开发中。要让大学生有危机意识,在大学生就业如此严峻的情况下,学好C++语言,能够提高大学生以后在就业竞争中的筹码。

2.讲课过程中,对C++语言中的很多概念,结合自然语言进行讲解

C++语言作为一门计算机语言,它和人类的自然语言相比,既有区别,又有联系。在讲解一些关键概念时,采用一些浅显的自然语言的例子,提高学生的理解能力。本文作者在讲述一些关键概念时,将这些概念和自然语言结合进行循序渐进启发式讲解,激发学生的学习兴趣,起到了非常好的效果。下面举几个例子。

(1)引用是C++语言中第一个新的概念。引用类似于自然语言中的别名或者绰号,是正名的别名,没有正名就没有别名。例如唐太宗就是李世民的引用。李世民是正名,唐太宗是别名。正名和别名属于一个变量,共用同一片内存空间。引用主要用作函数的参数传递,形实结合后不会产生临时的变量,节省了内存空间

(2)类和对象是C++语言区别于C语言中普通数据类型和变量的概念。类是具有相同属性和行为的一组对象的集合,它为属于这个类的所有对象提供了统一的抽象描述,其内部包括属性和行为两个主要部分。类和对象的关系就像模具和铸件的关系一样,类就相当于模具,对象就相当于铸件。一个模具可以生产出成千上万个铸件。

(3)友元是C++语言中另一个新的概念。在数据共享与保护中,友元类似于自然语言中的朋友,但是友元和自然语言中的朋友既有联系又有区别。人类的朋友关系通常是双向的、可以传递的,但是C++中的友元关系是单向的、不能传递的。

3.引导学生合理安排课程的学习时间,培养学生的学习兴趣

教师可以把学生分成若干个小组并布置一些编程作业,培养他们的团队协作意识,并共享小组编程成果,使得他们对自己编制的程序能够运行和产生正确的结果具有自豪感,提高学生的学习兴趣。由每一个小组各自给全班同学讲授和演示自己的算法、编程思路、运行结果,既能够锻炼学生的编程与演讲能力,又能够在课堂中产生良好的互动。

4.讲课过程中尽量做到幽默风趣,灵活运用教学手段

教师在上课时,要做到风趣幽默、声音洪亮、带人真诚、平易近人、知识渊博、通俗易懂,才能产生良好的教学效果。教师要灵活运用多种教学手段,尽量采用多媒体教学,在PPT幻灯片中多做一些动画效果,或者以Flas演示程序的动态运行过程。教师在C++语言教学过程中要根据课堂中学生的反应,随机应变,结合我国传统文化与最新国内外时事,让学生潜移默化地学习一些难以理解的语法,则能达到事半功倍的效果。

四、对一些难以区分的概念采用表格形式进行对比和总结

C++语言是在C语言基础上发展起来的面向对象的高级语言,全面兼容C,但是又增加了很多新的较为复杂的语法知识点。对于一些学生难以理解和掌握的语法知识点,如果教师不帮助学生及时进行总结和举一反三,按照大学生初学的水平很难真正达到掌握和编程应用的水平。因此,教师可以在讲完某些知识点后采用表格的形式进行对比和总结。例如,C++中引用和指针的区别总结表,普通指针、指向常量的指针和常指针三种指针所指向的内容和指针本身能否改变对比总结表,对基类中具有不同访问属性的成员经过不同方式继承后在派生类中的访问权限的比较和总结表,运算符重载时重载为类的成员函数和友元函数、前置、后置自增、自减运算符参数个数总结表。

五、熟悉Visual C++编程环境,具备图形界面编程能力

目前,Visual C++ 6.0是比较经典的开发环境。即使掌握了C++基础知识,仍然难以高效掌握使用Visual C++的编译器。为了培养实用型软件开发人才,教师还应该进行Visual C++编译器的入门教学,培养学生掌握如下知识:

1.能够使用Visual C++开发环境进行界面设计;

2.能够创建简单的基于MFC的应用程序;

3.能够使用类、函数和消息映射机制;

4.能够利用开发环境有效创建对话框、按钮和菜单等资源。

当然,对于Visual C++的学习,一本好的教材也至关重要,现在的书店和图书馆各种Visual C++的学习教材五花八门,不泛互相抄袭、错误百出、误人子弟的教材。如何从这些书籍的海洋中找到合适的入门教材,对于作为初学者的大学生来说有点难为他们。本文作者也买过不少Visual C++学习的书籍,其中不少书就没有任何学习价值,既浪费钱,又浪费时间。作为教师,有责任和义务为学生挑选一本优秀的、很容易入门的教材。本文作者和周围很多从事Visual C++语言开发的朋友们都认为Jon Bates主编的《实用Visual C++ 6.0教程》是一本非常不错的教材。本人在每个学期给学生教学时,都会将这本教材的电子版发给同学们,而且从他们的反馈来说,效果确实不错。

六、理论与实践相结合,提高程序编程与调试能力

理论必须与实践相结合,才能得到验证,否则只是纸上谈兵。作为一门计算机语言,C++程序设计的实践性操作特点决定了上机实践是课程学习中的重要环节。授之以鱼,不如授之以渔。帮助学生编程序或调试程序,不如教会学生编程序或调试程序。因此,在教学中,教师可以从如下几个方面进行考虑:

1.上课时教师提前给同学们将上机编译器环境、各种单步调试、断点调试的方法传授给学生,并布置好上机操作的题目,这样学生在上机前就会有充分的准备,做到有的放矢。

2.针对性地给学生布置一些具有趣味性的程序设计题目,让学生通过查资料、上网和请教老师等多种方式编程调试,培养学生解决问题的能力,让学生感到有成就感,提高学生的学习兴趣。

3.对学生的上机存在的问题进行总结,对于一些普遍存在的问题要在课堂上统一进行讲解。并且也要对对自己的教学方法和教学模式进行实时总结和改进,形成闭环。

按照本文作者研究的教学方法,经过一个学期的理论教学与上机实践学习,在学期期末考试前的一个月对2010级计算机科学与技术专业1班全班52个学生划分为13个小组布置了课程设计项目。每4人一个小组,由每个小组自己推选出1个组长、1个副组长和组员。组长负责课程设计项目的总体实施和分工,副组长协助,组员配合。课程设计的考核是每个小组交一份打印课程设计报告,包括项目题目、小组成员、程序设计结构、流程图、源程序、实验运行结果。每个小组推举一名学生在讲台上进行10分钟的PPT演讲,老师和学生进行5分钟左右的提问。考核成绩是由老师根据课程设计报告、演讲PPT内容、回答问题效果等项目进行打分。经过一个学期的C++理论学习和一个月的课程设计,全部小组都按时递交了课程设计报告和进行了汇报演讲,其中不少学生讲的非常精彩,这对于他们也是一种不可多得的实战锻炼。学生普遍反映通过理论与实践结合的学习开阔了视野,提高了工程应用能力,培养了团队协作能力,增强了学习信心,达到了前所未有的良好效果。

七、结论

本文作者根据多年来的教学体会,提出将满堂灌式的教学方法转变为以学生为主体、以活跃式课堂为形式、以课程实际相结合的多模式创新教学方法,真正实现教师为主导、学生为主体的互动式高效教学创新模式。

参考文献:

[1]郑莉. C++语言程序设计[M].北京:清华大学出版社,2010.

[2]钱能. C++程序设计教程[M].北京:清华大学出版社,2009.

[3]谭浩强. C++面向对象程序设计[M].北京:清华大学出版社,2006.

[4]王卫军.教师信息化教学能力发展策略研究述[J].电化教育研究,2012, 229(5):103-109.

计算机程序设计语言范文第4篇

关键词:教学方法;学习兴趣;实践;理论

职业高中是中等职业教育的专门机构,担负着为企业培养技术工人和高职院校的学生的责任。在职业高中的课程体系中,很多专业的学习都离不开C语言程序设计这门课程。其教学目标就是向学生传授结构化程序设计的基本思想以及设计方法。在职业高中的教学中,学习的都是基础知识和基本技能,而且这一部分学生的文化课基础不好,学习能力较差,面对这样的情况,计算机基础教学也应该进行必要的改革。

一、重视教学理念的改变

教师的教学理念和教学方法都和教学的效果有着密切的关系,因此面对不断变化的社会现实和学生的就业实际情况,教师的教学理念也要进行必要的改革。所以中职计算机专业的学习要结合学生的实际和就业实际进行内容的更新和设计。用教材,但是也不能拘泥于教材,要灵活地设计教学内容,为企业的需求服务,为学生的未来服务。以应用为教学方向,注重知识的建构和应用知识能力的培养,以激发学生的学习兴趣为教学重点。中职学生正处在青春期,而且他们普遍缺少良好的学习习惯,因此,这种枯燥的知识的学习要以激发学生的学习兴趣为主,不论是内容的设计和教学方法的选择,都要以激发学生的学习兴趣为主。

二、做好理论与实践的结合

计算机知识学科是一门应用学科,关键是要重视应用。而计算机的理论也是学习专业知识的一个重要内容,理论和实践密切联系起来,才是教学的最终目标。教师在教学中既要重视学生对理论知识的掌握,更要注意专业应用知识的掌握,将二者密切结合起来,才能收到预期的效果。学生在学习中往往不重视理论知识的学习,只重视程序设计的专业知识的学习,因为他们认为这样的知识才是就业的需要。教师要帮助学生纠正这方面的偏差,要重视理论的学习,没有理论的学习就没有计算机知识的提高。在教学中,也要重视理论知识的教学,结合理论知识传授技能知识,使学生掌握计算机的应用,为将来的工作打好基础。

计算机知识的学习是学生未来工作的必须,尤其是当今这个信息化时代,工作和生活都离不开计算机,学生的学习是未来的发展,更应该重视这门课程的教学。

计算机程序设计语言范文第5篇

Abstract As a fundamental and central course of computer profession, the C programming language directly affect training goal of computer profession. Therefore, Adapting to the development of Computer profession in new situation, the traditional C language programming teaching method and implementation strategy need to reform. In this paper, the author summarize some views on the teaching reform from the teaching experience of C programming language course.

Key words C programming Language; teaching organization; teaching method

“C语言程序设计”课程是计算机专业学生的一门程序设计入门课,是培养学生程序设计思想和能力的技术基础课,同时也为后续的专业课程奠定了坚实的基础。其中专业核心课程“数据结构”一般以“C语言程序设计”为辅助教学工具,学生在具备了“C语言程序设计”的基本程序设计思想和方法以及数据结构的基础知识后,才能进一步学习Visual Basic、Java等高级语言程序设计。因此,必须将“C语言程序设计”课程的教学作为计算机专业培养的核心任务。

1 “C语言程序设计”教学现状分析

目前,计算机专业“C语言程序设计”课程的教学大多还停留在传统的教学模式上,主要以教师的“教”为主,教师根据教学内容的组织讲授基本的概念、讲解例题、布置作业给学生进行上机练习,学生在教师的指导下完成编程练习。在教学的过程中,学生完全处于被动接受的状态,无法发挥学习的积极性和主动性,以至于大部分学生普遍反映“C语言程序设计”枯燥、难学,缺乏学习兴趣,学生普遍的编程能力较差。

由于新生入校后已有的计算机专业基础知识薄弱,学习方法欠佳,以至于学生在初次接触“C语言程序设计”这样抽象难学的程序设计课程时,都会难于正确把握课程的学习方法。因此,任课教师应该准确地分析学生的学习现状,深究原因,找到解决方法,能够最大限度地激发学生的学习兴趣,引导学生合理有效地学习,并且培养学生分析和解决问题的能力。

2 “C语言程序设计”教学改革

依据培养目标的定位,教师应以培养学生基础能力和提高学习兴趣为原则,合理地开展“C语言程序设计”课程的教学改革。为此,笔者结合“C语言程序设计”的教学体会,提出如下的观点。

2.1修订“C语言程序设计”的教学大纲,编写和选用适合计算机专业的教材

首先,教师应准确定位课程的教学目标和任务,“C语言程序设计”课程的教学目标主要体现在知识、技能和素质三个方面。其知识目标要求学生较好地掌握“C语言程序设计”的基本语法、语句、控制结构以及结构化程序设计的基本思想,这是学习本门课程的核心要求。课程的技能目标体现在使学生认识到算法、良好的程序设计方法及上机实践的重要性,并且掌握算法设计和结构化程序设计的方法。另外,在素质目标方面要求培养学生利用“C语言程序设计”分析和解决实际问题的能力。其次,教师应结合教学目标和任务合理组织教学大纲。鉴于“C语言程序设计”课程实践性较强的特点,教师还应根据教学大纲的要求,制定合理有效的实践教学大纲,制定实践教学内容和实施方案。实践教学内容应紧密联系实际应用,并强调充分调动学生的积极性、主动性和一定的团队协作能力,另外还应注重培养学生分析和解决实际问题的能力。

依据教学大纲中教学内容的组织和实践教学的设计,教师应合理地编写和选用课程的教材。目前,“C语言程序设计”方面的教材甚多,以清华大学谭浩强教授编写的《C语言程序设计程序设计》一书为代表的一系列优秀教材为课程的教学提供了较好的导向作用。但根据计算机专业的培养目标和课程的定位,教师应对教材的内容进行适当的调整。

另外,在教学过程中教师应严格按照程序设计的规范和方法分析和解决应用问题,应培养学生规范的程序设计方法和严谨的编程习惯。例如要求学生在日常程序设计练习中按照“问题定义―问题分析―算法设计―编写程序―上机调试运行”的流程实施,并且在算法设计环节使用规范的程序流程图描述算法。这样一系列的措施有助于培养学生良好的编程风格和习惯,为后续其它的程序设计语言的学习夯实基础。

2.2改革教学组织和实施策略,优化教学结构

由于“C语言程序设计”课程的实践操作性较强,学生在上机实践的过程中,不仅可以消化和巩固课堂所学知识,还可激发和提高学习兴趣、锻炼逻辑思维能力。教师应注重将课本上的理论知识和实际应用问题进行有机结合,提高学生的程序设计能力,进一步培养学生分析问题和解决问题的能力。因此,课程的教学组织主要分为理论教学、上机实践教学和课程设计教学三个环节。

其中,理论教学主要遵照教学内容的要求, 采用多媒体教学与传统板书教学有机结合的方式,实施理论与实践一体化的多媒体教学环境,实现交互式教学。其次,教学中应重视“兴趣引导”,激发学生学习热情,引导学生主动学习。另外,应注重以模拟实践教学为主线,提高课堂教学的教学效果。

上机实践教学以课堂理论教学为前导,内容设计应以巩固和综合运用主要知识点为主线,内容具备实用性,以循序渐进的任务驱动方式指导学生从简单的程序设计开始逐渐扩展到完成综合的程序设计,以由浅入深、由单一到综合的过程展开,符合学生的认知习惯和知识的拓展,使学生利用所学知识解决实际的问题,培养程序设计的能力。

结合课程的特点,课程设计环节应利用“C语言程序设计”的基础理论和上机实践课中学到的编程知识和编程技巧,通过布置具有一定难度、一定编程量的课程设计任务,使学生通过课程设计掌握高级编程语言的知识和编程技术,具备分析问题和解决问题的能力。

2.3秉承合理有效的教学理念,改革传统的教学方法

传统的“C语言程序设计”教学方法一般采用灌输式的单向教学法,学生被动地接收知识,并且教学知识点零散,建构系统的知识体系,另外理论教学和实践脱节,学生只会纸上谈兵,动手实作能力较差,不能利用所学的知识解决实际问题。因此,在教学过程中应重视教学方法的改革。“C语言程序设计”教学主要采用“任务驱动”、“案例教学”、“讲练结合”的教学方法,三种方法有机结合,合理地组织课程的教学。

“任务驱动”教学法要求按照教学目标的要求,围绕教学内容,合理地安排一个任务。其主要分为三个基本环节,首先提出任务,例如设计判定学生成绩等级的程序;进一步分析任务,提出问题的解决方法,主要设计程序的算法;最后解决任务,讲授解决任务运用的知识点,例中主要的知识点为选择控制结构的语法及应用。

“案例教学法”以综合的“C语言程序设计”程序案例为主线,贯穿所有章节的知识,课程教学具有系统性和连贯性。例如,提出“学生成绩管理系统”案例,实现成绩的录入、添加、修改、删除、查询、统计和排序等功能。通过分析案例,明确系统的基础知识和各个功能模块的相关知识点,如表1所示。

另外,“讲练结合”的教学方法主要应用于上机实践教学环境中,采取边讲边练的教学互动形式,完成程序设计实例。教师先讲解和演示与本次实践任务相关的应用问题和注意事项,学生按照要求动手完成实践任务,教师及时了解学生在实践中出现的问题,加以正确的启发和指导。最后教师对本次实践任务的完成情况进行总结,集中反馈出现的问题并提出解决方法。

2.4完善课程的考核方案,合理评价学生的学习成果

鉴于“C语言程序设计”课程理论和实践并重的特点,课程考核应主要分为理论考核和实践考核两大方面。其中理论考核以笔试为主,考试内容应遵照教学大纲和考试的要求,突出课程的主要知识点;实践考核主要以上机实践教学环节制定的任务和课程设计为考查对象,客观地反映学生掌握知识和运用知识的能力。

“C语言程序设计”的课程设计考核应采用学生答辩的形式,从学生运用知识的能力、分析和解决问题的能力、创新能力等方面进行综合考核。