基于云课堂的混合式数据结构课程建设

2020-04-04 06:36胡国玲
计算机教育 2020年2期
关键词:数据结构线下案例

叶 琪,胡国玲

(华东理工大学 信息科学与工程学院,上海 200237)

1 背 景

近年来,随着新兴的互联网信息技术不断渗透到教育行业,传统的教学方式正在不断地发生着改变。特别是《国家长期教育改革和发展规划纲要》(2010—2020)的提出,加速了教育信息化的进程。云课堂作为“互联网+教育”的典型教学形式受到了广泛的关注。云课堂[1]提供多种具有更大灵活性的教学方式,为计算机教育发展提出了新思路和方法。由于云课堂与传统教学存在较大的差异,通常教师针对不同的教学形式各自单独建设课程,往往教学资源未能得到充分的利用。因此,如何建立一套丰富的、多层次、多视角、兼容性强的课程模型,实现多种教学形式的交叉互补,打通线上与线下两种模式,确保课程能满足不同层面的学生需求,这些都给课程建设带来了新的挑战。

数据结构课程是计算机专业的核心课程,是一门研究非数值计算的程序设计问题中计算机的操作对象以及它们之间的关系和操作等的学科[2]。它是进一步学习计算机领域其他专业课程的基础,对从事软件研发的专业人员起着重要的枢纽作用。该门课程对理论性和实践性的要求都很高,不仅要求学生掌握数据的组织方法和现实问题在计算机内的表示方法,还要培养学生分析、设计、解决问题和创新思维等多方面的综合能力。

为了改变过去以知识灌输为主的培养模式,使学生主动地学习,专家们从不同角度探讨了数据结构课程的建设。目前主流有两类建设方案:一是构建案例库或游戏库,例如,Dicheva 等人[3]将数据结构中的概念、应用和实现3 个方面联系在一起,设计了栈结构的教育游戏,帮助学生在概念和实践层面中对栈结构的理解。杨武等人[4]提出了以实际工程项目和科研项目为素材构建较大规模的案例库,以及徐新[5]提出的基于案例驱动的系统构建方法,都采用了案例库进行教学实践,通过案例库的实践提高学生学习的积极性。另一类从教学模式进行改革,例如徐薇[6]等人提出了基于智慧教室的翻转课堂教学模式,给出数据结构课程的翻转课堂教学的设计与实施,并以调查问卷对教学效果进行评估。王翠娥[7]等人按照MOOC 平台的教学模式,制定数据结构课程规划,并合理设置课程的授课内容及时长。

2 基于云课堂的混合式模型

李明华[8]将MOOCs 分为3 种模型:完全网络授课模式、网络课程+学生自助式面对面互动模式、网路课程+本地大学教授面对面深度参与教学模式。在此基础上,我们根据课程的适用群体,建立一种如图1 所示的基于云课堂的混合式模型,提供慕课、案例分析、在线课程、线下课堂4 种教学模式,以及公共的教学文件和数据分析模块。其中,仅线下课堂是按传统的教学方式安排教学时间和场地,慕课、案例分析、在线课程、公共的教学文件和数据分析模块建立在网络环境中。慕课和在线课程都是视频形式的网络课程。案例分析平台中包含了案例资源库、案例题库及实现等。公共的教学文件包括课件、每个知识点的作业、测试题、习题详解、阶段性测试等。

图1 基于云课堂的混合式模型

混合式模式将不同教学模式进行组合,以适合不同的学生群体。具体如下:

(1)慕课+案例分析模式:慕课和案例分析相结合的方式一方面提供了数据结构中基础知识点的MOOC 精讲,另一方面利用案例分析帮助学习者强化工程应用能力,使得规模化教学和个性化学习得到了统一。该模式有很强的灵活性,适合于对数据结构课程有兴趣的任何人员。

(2)慕课+线下课堂模式:学生利用在线慕课学习掌握基础知识点,再通过线下的学习汇报、分组项目实践、课堂讨论等多种模式来巩固知识点的理解,更进一步提高学生分析问题、解决问题的能力。该模式基础知识点的学习过程自由灵活,线下课堂所需集中教学时间较少,适合少数真实注册的在校非相关专业的学生。

(3)在线课程+案例分析+线下课堂模式:在线课程提供了数据知识点以及抽象数据类型实现的详细讲解和分析,案例分析平台给出具体案例的解析并提供学生实现的平台,线下课堂提供学生答疑解惑和项目合作交流的机会。该模式解决线下课时严重不足与深入学习要求之间的矛盾,适合于少数真实注册的在校相近专业的学生。

(4)线下课堂+在线课程模式:线下课堂和在线课程相结合的模式兼顾了知识讲解与能力培养,既充分发挥学生自主学习的积极性与主动性,又有教师的引导和学习过程的管理,适合于本校计算机专业的学生。

3 慕课和在线课程的建设比较

本模型建设慕课和在线课程两种不同形式的网络课程。虽然慕课和在线课堂的核心要素都是视频,依托的都是互联网信息技术,但两者在建设中存在许多的不同之处。表1 从适用人群、特点、教学内容、教学方法、教学过程等不同角度给出了慕课和在线课程的比较。

表1 慕课和在线课程的比较

3.1 建设目标不同

慕课的建设目标是实现教学资源的开放与共享,为学生提供更具广度的知识。慕课采用单独录播的形式制作,强调了精巧的课程设计,侧重于数据结构知识体系的构建。慕课面向全社会开放,满足学生个性化学习需求。此外,为了有效保证慕课课程的质量,采用在线作业和测验等评价方法来督促学生的学习过程。

在线课程的建设目标是建立一个不受时空限制的学习环境,缓解学生基础参差不齐的情况。在线课程是在直接传统教学课堂中进行录播和剪辑制作而成,课程设计的侧重点在学习内容基础上获取复杂技能。在线课程兼顾了传统课堂的交互性强、课堂气氛活跃特点以及网络课程传播广、可重复学习等特点。由于在线课程的建设目标和自身特点,主要是面向本校学生相近专业学生开放。在线课程的考核方式采用了在线评估和线下考核方式相结合的综合评估,考核方式更加灵活,同时也保证了考核成绩的真实性。

3.2 教学内容和教学方式的差异化设计

以最小生成树的Kruskal 算法为例,慕课教学充分利用多媒体教学载体,首先使用Flash 实例演示该算法构造最小生成树的过程,然后深入浅出地总结该算法的基本思想,接着给出伪代码,最后简要分析算法的性能。

在线课程教学采用了启发式教学方式,首先给出算法的基本思想,然后通过剪辑技术实现对实例和在线学习的学生交互地构造最小生成树,接着复习图的存储结构并给出邻接矩阵创建图的实现函数:CreateGraph()、BuildGraph(),然后再在此基础上讲解以邻接矩阵为存储结构的Kruskal 算法的实现函数,最后给出主函数以及输入文件,分析Kruskal 算法的输出结果和算法的时间/空间复杂度。此外,展开讨论利用最小生成树算法实现聚类算法[9],引导学生概括和发现最小生成树算法不同的应用领域。

这种更具有针对性的建设使得教学更贴合不同的学生群体,给予学生更大的自由,避免学生产生厌学、弃学的现象。

4 多层次的案例分析

4.1 建设目标

随着软件产业的不断发展以及竞争的加剧,一方面对计算机专业人员提出了更高的工程实践要求;另一方面,无论是网络教学还是传统的线下教学都面临着学生无法将课堂所学的知识与实际应用项目之间建立联系,不清楚线性表、栈、队列、树、图等结构能解决什么应用问题以及应该如何应用。

除此之外,不同种类学生的基础各不相同、前期专业各不相同、能力水平差异很大。部分学生数据结构的先导课程C 语言程序设计或面向对象的程序设计课程基础较差,无法熟练地应用指针、构造类型、链表等结构,直接影响数据结构的学习。而编程能力较强的学生又感觉基础的课后实验过于简单,学习的积极性不高。

针对上述问题,构建多层次的案例库能很好将教学内容与前沿技术以及产业需求相结合,弥补目前教学中常见的课程实验与实际工程项目脱节的情况,不同层次的案例也能解决学生能力差异大的问题[10]。

案例分析平台的建设目标是强调数据结构基本思想的应用实践,将能力培养落到具体的案例实践中,使学生通过案例的实践训练,具备分析问题、设计方案和解决问题的能力。更进一步,培养学生的团队合作和沟通能力。

4.2 建设内容

建设包括基础型案例、设计型案例、综合型案例三类覆盖全部知识点,且难易程度不一的案例。每个案例库给出案例的设计要求、设计思路、测试用例、代码示例、常见问题分析等。其中,基础型案例、设计型案例以个人完成为主,综合型案例鼓励学生组队完成。

学生可以根据实际情况选择不同层次和难度的案例,不要求所有学生对所有层次的案例都能掌握和实现。例如,对课程感兴趣的人员可以要求实现基础案例,学习理解设计型案例的设计思路;本校计算机专业的学生则要求实现基础型案例和设计型案例,掌握综合型案例的设计思路。

多层次的案例和知识点的覆盖关系设置见表2,图中每列代表一个知识点,前三行表示了每个基础型案例、设计型案例、综合型案例编号所覆盖的知识点,例如基础案例(1)涉及线性表—顺序结构,第一个综合案例就覆盖了线性表—顺序结构、堆、简单排序等三个知识点。第四行到最后一行分别表示每个知识点在案例实现时需要考察的更细分的小知识点,并以“△”标识,例如线性表—顺序结构知识点中包括了存储结构、操作(创建顺序表、插入/删除、查询)、性能分析等小的知识点。

表2 案例和知识点的覆盖关系设置

基础型案例主要以基础实验为主,目的是验证各种基本数据结构算法。学生通过案例实践过程中发现存在的问题,将理论知识与实践具体操作相结合形成学习的环路,再进一步返回加深理论知识的学习。学生通过基础型案例的练习和训练,不但加深了对理论知识的理解,同时还强化了代码实现的训练。基础型案例覆盖数据结构中所有主要的知识点,设计案例时可以选择每个知识点中2~3 个小知识点作为考察学生的设计要求。

设计型案例以一些小型的实际问题和以往教学中累计的项目为来源,其建设目标是要求学生能运用各类基本数据结构,识别案例问题的关键环节,培养学生的个人技能。设计型案例以考察一个知识点的应用为核心,包括分析问题定义数据的存储结构,给出设计思路并实现相关的算法,以及算法的性能分析等多个环节。此外,设计型案例还需给出过去教学实践中常见的错误问题分析实例。

综合型案例以一些真实项目为来源,要求学生能够针对复杂工程问题,选择适当的技术解决实际问题,并理解方法的局限性。综合型案例是需要使用多种不同基本数据结构组合才能解决的实际案例。

5 线下课堂

基于云课堂的混合式教学的线下课堂采取翻转课堂的教学模式,以学生为主,教师主要是答疑解惑。学生将前期在看课程视频和实现案例过程中出现的问题带到课堂,教师采用分组讨论、现场汇报、综合型案例成果汇报等多种形式,引导学生自主解决难点问题,从而进一步确认、强化、提升学生对知识点的理解。教师还需对慕课或在线课程中相关知识的重点和难点进行扩展和延伸,指导学生深层次内化知识,并建立更完整的知识体系。

6 结语

为了保障多层次人才培养的需求,本文建立了数据结构课程的基于云课堂的混合式模型。云课堂的建设符合了现代高等教育的发展趋势,具有灵活、交互性强、可重复等特点,满足学生个性化、自主学习的需求。数据结构课程的混合式模型提供了一个整体解决方案,促进教学资源的整合和共享,实现了教学资源最大化的利用。

猜你喜欢
数据结构线下案例
“线上+线下”混合式体操教学的应用研究
2022年4月部分家电线下市场简评
ORACLE CINEMA CEDIA 2020案例大赛获奖案例
数据结构线上线下混合教学模式探讨
COZMINE线下集合店
TWO VILLAS IN ONE CEDIA 2020案例大赛获奖案例
Bespoke Art Deco Media Room CEDIA 2020案例大赛获奖案例
重典型应用,明结构关系
随机变量分布及统计案例拔稿卷
ONE⁃MAN UNIVERSITY