- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据结构课程设计教学过程研究与实践
数据结构课程设计教学过程研究与实践
文章编号:1672-5913(2009)10-0068-02
摘要:本文通过分析“数据结构”课程的特点、课程设计的重要性及目标,重点对“数据结构”课程设计的教学过程进行了探讨和实践研究。
关键词:数据结构;课程设计;教学过程
中图分类号:G642
文献标识码:B
1引言
“数据结构”是计算机科学与技术专业的必修、主干课之一。它旨在使学生学会分析研究数据对象的特性,学会数据的组织方法,以便选择合适的数据逻辑结构和存储结构,以及相应的运算,把现实世界中的问题转化为计算机内部的表示和处理,这是一个良好的程序设计技能训练的过程。该课程在计算机科学专业的课程体系中处于承上启下的中心位置,尤其对后续的软件类课程的学习起着举足轻重的作用。
课程设计作为一门独立的课程,是课堂理论教学的延伸和补充。基本目标是应能够使理论与实践相结合,巩固、加深和融合所学的专业课程知识,更重要的是能培养学生的独立思考能力、分析和解问题的能力、开拓创新能力、文献检索能力、合作能力。
由笔者多年的教学实践,认为“数据结构”这门课程的教学不是一蹴而就的,要循序渐进。在第一轮的理论教学和实验教学之后,学生对很多问题不能融会贯通。尤其在遇到具体问题时,不知该如何运用所学知识,提出解决方案。所以在第二阶段加入“数据结构”课程设计这门课程,不仅可以帮助学生充分理解、巩固所学的基本概念、原理和方法,更重要的是能够针对实际问题来选择数据结构,设计相应的存储结构并加以实现,从而最终解决问题。在此过程中,激发学生不断创新,要敢想、敢做,鼓励学生有自己的想法,也可以对现有算法加以改进。可以看出,这一过程不是通过一学期的理论课程和实验课程就能完成的,所以在这之后进行课程设计是十分必要的。
根据上述分析,笔者认为“数据结构”课程设计的基本目标是:培养学生对数据结构知识的全面综合训练,把书上学到的知识用于解决实际问题,培养今后软件开发工作所需的动手实践能力,包括问题分析、结构设计、用户界面的设计、程序设计时的基本技能和技巧,以及一整套软件工作规范的训练和团体协作精神的培养。本文主要对“数据结构”课程设计的教学过程进行探讨和研究。
2 “数据结构”课程设计教学过程的研究
教学过程中包含了许多要素:教师、学生、教材、设备、媒体;教学目标、教学内容、教学方法、教学手段、教学测量、教学评价等等。如何使这些要素能够做到有机配合、有序运行,促使教学效果最优化,只能运用系统论的观点和方法,对教学过程进行科学的设计,也就是我们所说的教学过程设计。“数据结构”课程设计的完整教学过程应包括教师、学生两个方面。教师方面包括:教学内容的选取、教材建设、教学方式、考评方法;学生方面包括:问题分析、逻辑设计和数据结构的选择、详细设计和编码、上机调试、实习报告。笔者就以上所谈教学过程当中的主要几点,谈谈自己的一些体会。
2.1课程内容的选取
“数据结构”课程设计的内容选取主要为课程设计题目的选取和对学生的教学要求。
2.1.1选题
(1) 选题要新颖、实用,能够充分调动学生的积极性。选题是实现课程设计教学目标的关键。既能反映大纲要求,反映本学科的新技术发展,又能使学生运用已学的理论知识解决实际问题。
(2) 选题要难度适中,绝大多数问题只要学生耐心阅读钻研就可以读懂会做,具有可行性。
(3) 选题所覆盖的知识点要广,要给学生留出发挥想象力和创造力的空间。
(4) 题目的规模应充分大,并且努力使学生对规范性的软件开发有初步体验,在一定程度上使得学生的工程化能力和团队合作能力得到锻炼。
2.1.2对学生的教学要求
(1) 问题分析和任务定义:对问题的描述应避开具体的算法和涉及的数据结构,它是对要完成的任务作出明确的说明。强调的是做什么,而不是怎么做。
(2) 逻辑设计和数据结构的选择:为操作对象定义相应的数据结构,以过程化程序设计的思想方法为原则划分各个模块,定义数据的抽象数据类型。
(3) 详细设计和编码:算法的具体描述和代码的书写。
(4) 上机调试:源程序的输入和代码的调试
(5) 实习报告应包括以下部分:
① 需求分析
以无歧义的陈述说明程序设计的任务,强调的是程序要做什么?明确规定:输入的形式和输出、值的范围、输出的形式、程序所能达到的功能、测试的数据包括正确的输入和错误的输入及其相应的输出结果。
② 概要设计
说明程序中用到的所有抽象数据类型的定义,主程序的流程以及各程序模块之间的层次(调用)关系。
③ 详细设计
实现概要设计中定义所有数据类型,对每个操作只需要
原创力文档


文档评论(0)