当前位置: 首页 > 范文大全 > 公文范文 >

数据结构课程教学改革与实践

时间:2022-05-05 17:05:02  浏览次数:

摘要:根据课程教学特点探讨教学改革的指导思想,提出5个方面的措施,通过面向对象化教学思想、案例、项目驱动相结合的教学方法、课程网站建设以及考核体系方面的改革和实践,为教学改革提供借鉴。

关键词:对象技术;案例教学;项目驱动;考核体系

数据结构不仅是计算机专业基础性的专业必修课,也是信息、数学等非计算机专业的必修课或选修课,它旨在培养学生将客观世界的应用问题按照面向对象程序设计的思想转化为计算机可处理、加工的数据,能根据数据的属性,选择合适的逻辑结构(设计问题的数学模型)和存储结构(数学模型的实现),也就是从问题中抽象出一个适当的数学模型(设计的算法),以及数学模型在计算机内部的表示和实现(算法实现)的能力,初步掌握对算法性能分析,利用面向对象程序设计思想训练复杂程序设计的能力。深刻理解数据在计算机中的存储问题,重点是数据的逻辑结构、存储结构和在特定结构基础上的算法实现,注重算法的效率性和在实际问题中选择结构,以提高学生软件分析、设计、编程和数据组织的能力,为后续学习面向对象程序设计、软件工程、数据库原理、人工智能等课程奠定坚实的理论和实践基础。因此,如何提高数据结构课程教学质量是课程改革的一项紧急任务。

1 教学改革的指导思想

我们认为,教学改革注重以下4方面问题:1)教师树立现代化的教育观是教学改革的根本,把“以教师为主体”、“以课堂为中心”的传统教育观转变为“以学生为主体”、“以实践为中心”的新教育观,教师的课堂教学要视情况发展而变化。数据结构的内容是程序设计和软件工程的基础,也是程序设计思想发展的必然结果,随着程序设计在非数值处理领域越来越深,程序规模也越来越大,它要求程序具有可重用性、继承性等功能,于是出现了面向对象(OO:Obiect-Oriented)技术,根据程序设计的需要,教师在讲授时应朝着面向对象技术作相应调整。2)目前,很多学校都开始注意选择面向对象程序设计语言版本的教材,如C++或者Java类的教材,但值得注意的是,学生在学习数据结构之前只学了C语言程序设计,缺乏面向对象程序设计的思想,更没有复杂程序设计的经验,他们也许可以看懂对某一问题的算法,但到实验室上机编程时,却不知从何下手,学生本想通过编程来验证一些理论和算法以及一些想法,提高学习兴趣,此时,却无法实现,学习兴趣和动力受到影响。上述问题的原因可以归纳为以下几点:1)程序设计的训练不够;2)没有接受复杂代码的完整的程序训练;3)在数据结构教学过程中,教师往往只注重课本上的理论教学,缺乏将理论和算法转化为可执行的代码的实例。针对这样的问题,我们将“案例教学、项目驱动”教学方法应用到数据结构教学中,将数据结构抽象的内容具体化、实例化,将空洞的理论和算法项目化,在案例教学中学习,在项目实践中锻炼,借鉴企业项目的实际操作,缩短学校学习与企业工作之间的距离,实现学校实验室与企业环境的零距离。4)数据结构覆盖的内容多而广,牵涉到前驱课程也较多,在课堂教学时数及实验时数都有所缩减的情况下,为了更好地使学生熟练掌握数据结构知识,我们可以开辟新的学习环境——网络课堂。我们发现,学生在学习过程中,希望找到更多更全的相关资料,希望了解自身在该门课程上的学习状态,有了网络课堂,学生就可以从课程网站浏览或下载相关内容。5)良好的课程考核体系至关重要,教师应在第一堂课时就将课程的考核方案+实验要求公布出来,让学生将学习和考核结合起来,促进学习。上述教学改革,可以更好地提高教学水平,实现提高学生的抽象思维能力、培养学生解决实际问题的能力和创新能力的课程教学宗旨。

2 课程教学模式改革的实践探索

2.1 将面向对象化教学思想融入课堂

面向对象方法是当今乃至将来程序设计的一种流行方法,它形成了新的学科分支,并广泛应用于操作系统、数据库、软件工程和人工智能等领域,加强这种方法的磨练,对学生学好后续相关课程非常重要。其方法具有如下优点。

1)提高软件的可修改性、可重用性、可维护性。一旦某个数据结构的数据存储结构发生变化,只需简单修改和数据封装在一起的有关操作,只要操作的对外接口保持不变,程序的其他代码就不用修改。

2)提高软件的安全性。由于数据的属性和方法是封装的,对外只提供使用的接口。

3)对象具有继承性。将几种常见的数据结构抽象化为对象,每一个结构就是一个类,这些可重用的类打成包,以备以后在程序开发中重用。

例如数据结构主要强调两个方面的内容:一是同类数据元素间的依赖关系;二是针对这些依赖关系的基本操作。这些操作是充分的,依赖它们可以实现对这些具有特定关系的元素的任意访问。抽象数据类型(ADT)的接口用一种类型和该类型上的一组操作来定义,每个操作由它的输入和输出定义,现在用一种更高层的抽象技术,也就是面向对象技术,可以将其抽象数据类型进行转化。ADT是数据结构(客观实体)的逻辑描述形式,其形式如图1所示。

将抽象数据类型转化为对象,其描述的形式如图2所示,从中我们不难发现,ADT和OO都是对数据元素及其相互关系的描述及其操作的描述。面向对象方法很容易从抽象数据类型转化过来,用面向对象方法的思想抽象化客观实体,在数据结构课程中,线性结构,树形结构和图形结构都是采用抽象数据类型的描述方式,在课堂讲解时,都可以以面向对象方法来分析这些数据结构。

2.2 应用案例调动学生学习积极性

案例教学是指由教师选择典型项目,以合适的形式把学生带入一种特定的真实企业项目或模拟企业项目情境中,在教师的指引下,由学生依靠已学知识和背景,在这种类似企业项目情境中发现、分析和解决问题,这种教学紧紧围绕已学知识,借助案例使理论和实践紧密地结合起来,最终达到培养学生解决实际问题能力的目的。

案例教学是一种启发性教学模式,必须在详细讲完一个章节的理论知识后,有目的、有针对性地设计相应的教学案例,案例要充分体现本章理论知识的应用,运用理论指导实践,学以致用,增强学生潜在的学习兴趣,同时,要消除学生的畏难情绪,理论知识理论性强、概念抽象,且比较难懂,案例有助于促进理论知识的提升,加强学生实践能力,例如,讲解线性表的顺序存储结构时,由于教材对算法描述都是采用类C语言,顺序表建立、插入、删除的基本操作可以作为一个典型案例,作为一个实验项目,把实验的目的、实验内容、实验所需的软件和硬件设备、实验原理图、实验方法和步骤一一展示出来,重点是分析这些实验操作的过程和展示类C语言描述的算法转换成C语言的源程序并将其实现。通过案例对任务进行细化和深化,突出重点,透析难点,引导学生主动参与项目分析讨论,启发、引导学生对案例进行思考分析,最后提供解决问题的方案,指引完成任务的实

现途径。这种带着问题进行思考和分析的教学方式,调动了学生主动求知的欲望,学生感受到了实验成功的喜悦,不再把学习当做枯燥无味的任务来随便应付。

2.3 以项目驱动提升实践能力

项目驱动教学是以项目为载体构建学习情境,学生在老师的指导下,通过共同学习,协作完成一个完整的综合性项目,以达到完成教学任务的一种教学方法,它适用于学习各类实践性和操作性强的课程,数据结构便是如此,这有利于培养学生自主学习、分析问题和解决问题的能力。

在项目驱动教学过程中,要注重3个中心的变化,一是由以教师为中心转变为以学生为中心,转变前教学是以老师讲、学生听的被动学习,课堂气氛沉闷,缺乏师生交流,转变后是以学生为主体,学生积极参与学习和讨论;二是由以课本为中心转变为以项目为中心,过去以课本为纲,照本宣科,现在需要教师在学完章节的理论后引进相应案例,如上所述,在讲解线性表的顺序存储结构时,引进相应的案例,同时,需要备好对应的项目(包括实验所需的软件和硬件设备,实验原理图,实验方法和步骤,最后的结果演示,上交项目报告的写作要求等),例如线性表的合并等项目供同学们选择,每组3~5人,自由组合,发挥各自的特长,自选组长,明确分工,组长对各成员承担的任务进行考核和管理,学生可以在课外根据老师在课堂所讲的案例和查阅相关资料,自主学习,充分发挥共同学习,协作完成任务,所有项目最多可以有2、3组选择,避免抄袭;三是由以课堂为中心转变为以实践为中心,课堂的讲解是为了更好的上机操作,所有的工作都是为实践服务,项目的完成和项目的演示都在实验室,在项目开发过程中,教师对项目进行具体的指导,项目完成要进行程序演示,并对每个项目进行点评和总结。紧紧围绕这3个中心,把工作做细,方案备全,学生在项目驱动的环境中使原有的知识、经验得到进一步的充实、丰富、完善和重构,提升实践操作的能力,缩短与社会、企业需求的差距。

2.4 建设课程网站

利用校园网或专门开发课程的网站,数据结构课程非常合适开设网络教学。网站都配备有数据结构的教学课件、学习指南、算法的演示程序以及源程序、配套的习题等资料,学生可以在课外随时进行网络学习,同时,教师的“教”与学生的“学”有更多的互动,例如,学生遇到问题可以在网络上留言,老师适时在线指导,这种课堂、实验室以外的学习可以有效解决学生课外学习所遇到的问题。

2.5 建立良好的考核体系

考试是检验教学质量和检查学生掌握知识水平的一种重要手段。传统的教学模式只关注学生卷面的成绩,把考试分数作为衡量学生成绩的唯一手段。随着教学方法和教学环境的改变,我们需要一套科学的考评体系。

考核体系要全面、公平、客观地评价学生该课程学习所达到的水平,针对数据结构课是一门必修课,我们采用闭卷考试进行考核,但总评成绩由一下评定构成:平时表现占10%,包括理论课和实验课不定时点名制,考核学生到课情况:课后作业和小项目的实验完成情况。课程项目占30%,课程学完后,学生按照项目要求,3~5人一组,每组完成一个大作业,其中小组答辩10%、项目报告20%。期末考试占60%。由这3部分组成的考核,降低了试卷分数的比例,更注重学生平时表现和学习过程,尤其是实验动手能力。这有利于推进教学,提高学生学习的积极性和主动性。

3 教学实践

为了验证教学模式改革在数据结构课程中的效果,我们在信息与计算科学专业1班43人(其中女生7人)和2班41人(其中女生6人)做了一次实践,两个班学生的计算机基础都差不多,现在1班采用传统的教学方法,2班采用改革的教学模式,期末测评采用统一的考核体系:平时成绩(10%)+课程项目(30%)+期末考试(60%),现将两个班的期末平均测评结果统计如表1所示。

结果显示,改革后的教学模式,提高了学生学习的积极性和学习兴趣。案例教学、项目驱动,引入了企业化的环境,模拟了项目开发过程,培养了学生对项目实施的解决问题的能力,同时,加深了学生对理论的理解。

4 结语

数据结构是培养学生严密逻辑思维的能力和提高抽象数据表示能力,以及提高算法实现能力的重要课程,要探索出更为科学的课程教学模式,我们仍需要一点一滴的积累,本文从面向对象化教学思想、案例教学,项目驱动相结合的教学方法、课程网站建设以及考核体系方面,对数据结构课程教学模式的实践与总结,旨在探索一种可行性的教学模式,在设计和实施中还有许多不足之处,还有待于进一步的完善和改进。

(编辑:郭小明)

推荐访问: 数据结构 教学改革 实践 课程
[数据结构课程教学改革与实践]相关文章