在计算机专业课程体系中,“数据结构”与“面向对象程序设计”是两门重要的专业基础课,也是相关专业必修的核心课程。现代软件设计的理论和实践中,从抽象数据类型和面向对象观点来讨论数据结构已经成为一种主流,使得“数据结构”和“面向对象程序设计”两门课程构成了紧密的内在关联。在传统教学中,这两门课程一直被设定为相互独立的课程,虽然总体的学时很多,但课程之间的内在联系没能有效地体现,使得教学效果大打折扣。笔者结合自己的教学实践,分析了其中存在的问题,提出了整合“数据结构”与“面向对象程序设计”教学的观点。1、 传统教学模式存在的问题
目前,很多高校在“数据结构”的理论教学中,偏重于算法的讲解,学生能理解算法,却不能针对实际问题运用算法。在实践教学中,教师规定的实验课题多是结合某个现实问题,要求使用教材中介绍的算法,采用编程语言加以实现,这样使学生的注意力集中在算法的分析与理解上,而忽略了数据结构的定义,尤其是分离了所研究对象的数据与操作之间内在的联系。
在“面向对象程序设计”的教学中,教师对课程的讲解多是基于语法体系的,重语法轻实用。在实践教学中,由于实验内容没有针对性,验证性实验多而综合性实验少,学生上机通常只是照搬书本上的程序输入到计算机,调试一下语法上的错误,最后得到输出结果。这样的方式只能让学生机械地记住一些编程语言的语法知识,不能够培养学生的自主学习能力,无法调动他们的积极性,编程能力实际上得不到有效提高。2、 课程整合的可行性
“数据结构”和“面向对象程序设计”同属于程序设计基础课程,“数据结构”重点描述同类数据元素间的关系及其操作,而“面向对象程序设计”重点描述实体对象的状态与行为。实体对象状态的表达基于数据结构中的元素间的关系描述,数据元素及其相互关系就构成了对实体的的描述,一个数据结构本质就是一个独立的实体对象。
另一方面,根据面向对象的思想,数据结构中的数据元素的类型定义和相关的操作皆被封装在类中,即把基本的数据结构定义成相应的类,对这些类进一步概括抽象,抽取一般特征,形成一种概念上的实体,从而建立一种新的抽象数据结构。
使用面向对象的方法来建立数据结构,在对数据结构的整体认识上更具优势,也更符合现代程序设计的主流。在教学实施上,将“数据结构”同“面向对象程序设计”进行整合,应该是可行而且是必要的。3、 课程整合的具体实施
笔者根据多
上一篇:文学期刊1234 下一篇: 对土地非诉行政案件的调查与思考 ——以如皋市人民法院为例