王柠 庄红超 石连栓
摘要:在教育部提出的新工科建设计划背景下,国家对培养“工匠之师”的职教师资类高校提出了更高要求。数据结构作为计算机类专业的核心基础必修课,不仅要向学生讲授扎实的专业知识,而且要培养学生的抽象思维和逻辑思维能力。鉴于该课程知识点多,教学难度大,存在学生基础薄弱、实际教学效果不理想等一些亟待解决的问题,本文从夯实学生基础知识、改革课堂教学手段、注重实验实践环节三个方面阐述一些创新改革措施,并在实际教学中取得了良好效果。
关键词:新工科;职教师资类高校;数据结构
中图分类号:G652文献标识码:A文章编号:1673-7164(2021)03-0115-02
基金项目院国家自然科学基金青年科学基金项目(项目编号:51505335);天津职业技术师范大学重点人才科研启动项目(项目编号:KYQD1806);天津市线下一流本科建设课程项目。
在“卓越工程师教育培养计划”的基础上,教育部提出了“新工科”建设计划。计算机技术是衡量国家现代科技和高端制造业水平的重要标志,美国、欧洲、日本、韩国等多个国家均将计算机新技术列为国家重要发展规划行业。当前,与计算机技术紧密相关的人工智能、大数据、物联网应用等“新工科”专业人才为当今社会所急需[1]。
职教师资类高校计算机专业是为职业院校和企事业单位培养“双证书一体化”的职教师资和应用型高级专门人才,要求学生具备培养专技人才的理论教学与动手实践能力[2-3]。“数据结构”是计算机类专业的核心基础必修课,是继先修课程“离散数学”“高级语言程序设计”后,进一步培养学生独立编程的逻辑思维和抽象思维能力的课程,也是后序课程“算法与程序设计”“数据库理论”“编译原理”的理论与实践基础。因此在新工科背景下,进行数据结构课程改革在计算机专业培养中至关重要。
数据结构课程要求学生一方面掌握基本数据结构模型,学会通过分析数据对象的特性选择合适的数据结构及编写相应算法,提高程序设计质量,夯实程序设计基础;另一方面强化实践,通过数据结构与编程实践相结合,不断巩固程序设计和编码能力,最终达到在实际工程中灵活应用的实践技能。
一、数据结构课程教学存在的不足之处
(一)学生基础底子薄
高级语言程序设计类课程(如C语言、C++语言)是数据结构的基础课程和先修课程,大部分高校把该类课程开设在第一或第二学期,学生正处于不适应和懵懂阶段,还未摸索出学习规律和方法。在学习程序语言设计时感觉很吃力,更难以形成编程思想。比如指针、函数、结构体、数组等内容既是语言类课程的难点,也贯穿了整个数据结构内容[4]。而学生学完程序设计语言后对于这些难点内容仍是一知半解,无法灵活应用,这给数据结构的学习带来了很大的障碍。
(二)课程教学内容知识点多且难度大
数据结构课程涉及线性表、栈和队列、串和数组、树和二叉树、图、查找以及内部排序等七部分关键内容。而每一部分内容都是学习的重点和难点,同时也是考研和软件水平考试的考点,知识点多且面面俱到,不容忽视。对于学生抽象概念的掌握能力和算法的实现能力提出了更高要求。
(三)理论教学与实践结合不强
数据结构是现实生活中具体问题的抽象、实践与应用。然而,学生在学习该课程后,往往难以应用于实践,遇到实际问题时,既不能分析出应该选用哪种数据结构模型,也不能编写出正确的算法来解决问题。例如顺序表与链表,没有充分理解两者的概念、掌握对应物理与逻辑结构以及优缺点,则难以在实际应用中正确选取[5]。
二、创新改革措施
(一)夯实基础知识,增加温故而知新环节
1.推进思政进课堂,引导学生学习由“被动”变“主动”
思想政治教育对大学生的世界观、人生观和价值观的正确形成至关重要,思政进课堂是对思政课的合理与有效补充,需要根据学科特点合理融入。教学团队要牢固树立“课程思政”教育教学理念,将“课程思政”贯穿于教育教学全过程。对学生而言,通过思政教育,学生对个人发展和所肩负的社会责任的认识更清楚、更深刻,自然会激发学生的学习热情,引导学生由被动学习转变为主动学习。
2.课堂教学引入温故而知新环节
为使学生能够从程序设计语言顺利过渡到数据结构的学习。教师在数据结构第一次课上讲解“抽象数据类型的表示与实现”时,要有选择地把C语言中的指針、数组、结构体、函数调用及参数传递等学生掌握不扎实的知识点复习一遍,然后在后续课程讲解中每次用到关于程序设计语言的知识点时,温习学过的C语言知识点,启发学生学习新的知识,带领学生一起完成不同逻辑结构类型的存储结构定义以及各种操作的算法编写。
3.修订教学大纲,充实、丰富、拓展、完善教学内容
目前,市场对人才的需求在不断发生变化,为适应这种变化的要求,高校要按照专业规划中确定的人才培养目标要求,从客观实际出发,以课程体系、教学内容的改革和更新为重点,优化课程体系、突出对学生实践能力的培养。充分利用有利条件不断创新,逐步建立起与社会发展的实际需求相适应、相配套的课程结构和课程体系,加强课程群建设,同时大力推动一体化课程建设。
(二)不断改革课堂教学手段,提高学生的课堂参与度
1.丰富教学资源
第一,PPT和板书结合作为主要的授课形式,其条理清晰、知识结构分明的特点,适合讲解知识的框架和概念。第二,对细节的知识,如二叉树遍历、图的遍历、栈操作,程序块的执行,算法的执行过程等,利用网络上现有的微视频或者自主开发的微视频、动画,直观地演示教学内容。例如,利用迷宫点灯动画讲解图的遍历,利用贪吃蛇动画讲解栈操作。这些丰富的教学资源较之于教师的口授,避免了理解上的错误和沟通问题,让学生由表及里全面掌握算法思想和具体操作。
2.更新信息化教学辅助手段
信息技术的发展,催生了大量的信息化教学辅助平台,合理利用这些辅助平台,能大大提高课堂管理效率和课堂活跃度。例如:利用雨课堂教学辅助平台可以将课堂考勤、课堂提问和知识巩固自然地嵌入授课过程中;利用麦克斯教学评价系统,可以随时了解学生对课堂效果的评价和反馈,及时改进授课方法、调整授课进度等。
3.完善过程化课程考核措施,改善学习过程
为了改变学生“平时不学、考前突击、考后清空”的状况,需要不断调整考核方式,将形成性评价与终结性评价结合起来,并逐步加大形成性评价在学生学业考核中的比重。平时成绩不止与平时作业和课堂回答问题有关,而且与课程笔记、参与课堂活动挂钩。课堂学习效果不仅直接关系到学生的成绩,也关系到学生的专业素质培养。从实际效果上看,考核方式的改革极大地激发和调动了学生在平时课堂教学中的参与度。
(三)注重实验和实践教学环节,理论与实际结合
1.工程项目驱动教学
针对学生对课程学习目的不明确,不能将知识和实际应用相联系的问题,教师可采用工程项目驱动理念,将知识点设计成工程项目中的各个任务,通过“任务”来加强和维持学生的成就动机。成就动机是学生学习和完成任务的真正动力系统,学生经过多次实践获得成功,逐渐巩固求知欲,从而形成一种比较稳固的学习动机。实施项目教学要求教师做到两点:第一,在任务驱动教学过程中,引导学生认清任务的轮廓、所蕴含的目标指向和目的意义;第二,在任务学习的过程中以及任务完成后,教师还要及时地加以引导和总结,使这种认识更清晰化和深刻化。
2.沉浸式体验,实践任务设置贴近实际需求
利用实践环节的具体任务促进知识接收,要求实验实践任务的设置体现知识理论深度且联系实际,教师应避免设置又大又空的任务内容。例如,“学生信息管理系统”不如“学生成绩管理系统”具体,教师在下达任务时,应详细描述项目要求,要求学生针对任务做细致的调查和分析,同时明确关键考察指标。比如在操作“学生成绩管理系统”时,必须包含根据姓名查找、排序、统计等操作。把知识点引入具体的操作中,不仅有助于学生对知识点的理解,而且还把困难的知识变得通俗易懂。
3.实践任务难度分级
实践任务要求过难或过于简单都会削弱学生的学习积极性,且学生的学习能力存在差异性。针对这一问题,教师在设计实验项目时,同一知识点下要安排不同难度的实验题目,或者对同一实验题目的难度要求不同,满足学生“成就动机”,改善实验课堂中学生被动接受的情况。任务设定分为入门级、提高级和专家级项目,为每一等级设置相关的知识结构要求和分值。
參考文献:
[1]周萌,曹政才,吴启迪.新工科背景下基于“五位一体”的机器人技术教学改革研究[J].高等工程教育研究,2020(04):66-70.
[2]庄红超,王柠.新形势下应用技术型高校教师队伍建设新模式探讨[J].教育现代化,2019,6(31):90-91.
[3]庄红超,王柠,蒋永翔,等.网络授课模式的实践探索与思考[J].教育现代化,2020(70):45-49.
[4]高艳霞,田继鹏.“数据结构”课程教学改革初探[J].纺织服装教育,2019(05):447-449.
[5]刘俊杰,胡忠望.《数据结构》课程的教学改革与实践[J].教育现代化,2020,2(17):70-71.
(责任编辑:胡甜甜)