基于FLASH的《C++程序设计》多媒体课件的开发与制作

时间:2023-05-27 12:06:03 公文范文 来源:网友投稿

摘要:针对C++程序设计课程的教学现状,分析传统教学方法所面临的问题,提出设计制作基于FLASH的C++程序设计课程的交互式多媒体课件,介绍课件的制作技术与方法,说明课件的应用情况和效果。

关键词: FLASH;多媒体课件;C++程序设计

中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2018)26-0183-02

1 多媒体课件的开发应用是现代化教育的发展趋势

随着“互联网+”技术的不断深入,“互联网+教育”作为一种新的教育形式,在教育领域的各个方面都得到了广泛的应用。利用多媒体交互式技术替代传统的教学模式也成为教学改革的重点。多媒体课件将文字、图像、视频和声音等因素融合成一体,增强学生的感性认识,增加知识的直观性和趣味性,促进学生的学习积极性,从而提升课堂的教学质量[1]。

随着人们生活节奏的加快和科学技术的发展,人们的学习方式也在不断的发生变化,以视频为载体的“微课”受到了广泛的欢迎。微课程的教学内容都是选择比较小的知识点或教学活动中的某个教学环节,具体到C++程序设计这门课程,也就是课程教学中的重点、难点和算法等相关的知识点。这些内容以前都是以PPT的形式展示的,随着计算机技术与网络技术的日益发展和成熟,刻板的静态幻灯片已不能满足需求,而基于FALSH的交互式多媒体课件具有丰富的表现力,良好的交互性和共享性,能够形成立体的信息交流和互动,在制作“微课”方面具有独特的优势,真正体现“教师是主导,学生是主体”的教学理念[2]。

2 制作C++程序设计多媒体课件

2.1 FLASH课件的特点

在C++程序设计的教学中,由于知识点众多,尤其是指针和面向对象部分概念抽象,所以这门课程一直存在课时量少,课容量大,教师讲课速度过快等问题;学生普遍反映课程内容枯燥,随堂掌握知识程度低,语法难懂,算法难以理解[3]。基于FLASH制作的多媒体课件,可以制作多种动画效果,具有丰富的表现形式,同时还有良好的互动性;文件体积小,演示方便,即适合作为课件在课堂上讲解,也适合作为微课在课前预习和课后复习,满足学生的各种学习需求。

2.2 FLASH课件制作的技术和方法

C++程序设计共有15个章节,教学内容从数据类型、函数、数组、指针到面向对象的类的封装、继承、多态等,所涉及的语法句式繁杂,知识点众多。虽然每个章节的内容不同,但是由于讲述的是算法语言,所以大部分章节课件的设计可以分为以下4个部分。

1) 概念解释(语法描述)。

对于初次学习算法语言的学生来说,很多程序语言的概念是抽象的,比如数据类型,静态变量等,这些概念用文字、图像这些静态元素很难直观地表现出来。在多媒体课件中,可以充分利用FLASH的色彩、动画优势,结合具体的语句、内存环境进行描述,以达到提高学生的学习兴趣,降低学习难度的目的。例如讲解“数据类型”这个概念,就从动画演示计算机的工程过程开始,引出CPU对内存的读写过程,重点演示数据在内存中均是以二进制的形式存在的,如果不事先指定数据类型,计算机本身是无法正确地识别数据的。这样,就解决了为什么在算法语言中所有数据都要声明数据类型,而这也是初学算法语言的学生所面临的第一个难点,因为在非计算机的环境中是不需要这个步骤的。

2) 程序分析。

所有的语法、算法都是与具体的程序有关的,而程序的运行过程是在计算机内部,学生是无法看见的,PPT课件只能演示静态的图形,无法实时跟踪程序的运行过程。因此,在传统的教学中,讲解程序时,教师都要在黑板上实时画一些内存结构,演示数据的交换、计算过程,由于课堂时间和环境的限制,这种讲解基本上都是简单、概括性的,无法进行详细、深入的跟踪和演示。

交互性的FLASH多媒体动画课件很好地解决了这个问题,在C++程序设计的课件中,有大量的程序实时演示,为了保持整个课件的风格上的一致,课件中都采用了相类似的方法处理程序的运行问题。在时间轴上,主要分5层展示,分别是背景层、文字层、程序层、运行层和输出层。分为静态和动态两个部分。

① 静态部分。背景层和文字层是静态的,即在整个程序的运行过程中是不变化的。背景层表现的是标题和程序与说明的背景模板,将程序与说明的背景叠加在课件的原始背景之上,相当于在教室挂了个黑板讲解程序,吸引学生的注意力;文字层表现的是静态的文字,在这一部分中就是题目和源程序。

② 动态部分。程序层、运行层和输出层是属于动态部分的。这三层都是用关键帧设置的。动画是分帧播放的,先运行程序层的关键帧,其后是运行层的关键帧,如果有输出,再运行输出层的关键帧,之后又是程序层→运行层→输出层这样反复循环播放,直至程序运行结束。

程序层是程序每条语句动态的运行过程,具体的制作方法是将每一条运行的语句拷贝下来,与文字层的位置重合,然后将这条语句转换成一个影片剪辑,在影片剪辑中采用了遮罩的技术,用一个箭头划过要运行的语句,运行前后语句的背景和文字的顏色均不同,这样执行这个影片剪辑的时候就可以很清楚地看到程序运行的当前位置;运行层是根据具体程序的执行情况,给出程序动态的运行过程,比如数据的走向,指针的位置变化,存储器空间的变化过程等;输出层是运行输出语句后当前屏幕的实时输出状况。

把每帧中具体的动画制作成影片剪辑属性的元件,放置在相应的帧上,这样播放到该帧时,动画就自动开始播放。课件采用了交互式的演示方式,每一条语句都是由按钮控件控制向上或向下执行,这样可以根据实际需要控制演示时间,也可以很方便地制作成小视频,形成“微课”的形式自动播放。图1所示为“指针与一维数组”这一节中讲解演示例1程序时的课件播放效果。

图1 程序分析部分动画演示

3) 算法演示。

C++程序设计中涉及到大量的算法,用程序设计语言编写的算法与数学、物理中的解决问题的方法还是有很大的差别的,需要对计算机的运行、存储机制有全面的了解,熟悉基本数据类型、自定义数据类型在计算机中是如何存储、赋值的,熟悉地址、数据在内存和CPU中的作用等,而所有这些又都是在计算机内部进行的活动,学生是无法看见的,因此算法的讲解和解释一直是程序设计类语言教学中的难点。

针对教学活动中出现的大量的有关算法的问题,我们归纳总结了C++程序设计课程中应该掌握的各类算法,建立了一个由flash动画制作的算法资源库。对每一类算法,用动画详细演示了算法实现的过程、步骤,对实现算法的程序也给出了详细地讲解。每种算法独立成章,即可以在课堂上进行讲解,又可以供学生在课前课后反复观看。由于动画生动、形象,又与程序同步,实时地描述了程序在计算机及存储器中运行的过程,因此对学生而言,有较深刻的印象,达到了很好的效果。

例如,“将一个数按次序插入到已排好序的数组中”是算法语言中的一个经典问题,在多媒体课件中,用动画的方式来动态地演示算法是如何实现的,具体步骤见图2。首先从后向前遍历数组,判断数组元素是否大于要插入的数据7,当大于要插入的数据时,数组元素依次向后覆盖(图2.a,2.b),直到遍历到不满足条件为止。这时,将数据插入到当前数据元素的下一个位置处(图2.c)。虽然用连环画的形式也可以将算法过程描述出来,但是用动画的方式使得学生掌握算法的过程会更加连贯和直观。

图2 将数据7插入有序数组的动画演示

4) 程序设计。

学习算法语言的最终目的就是设计程序,因此程序设计的思路与方法也是初学者的难点。在程序设计这个环节,多媒体课件采用的是“任务提出——算法分析——程序说明”这三个步骤,在算法分析中,可以根据具体要求演示程序的输入输出过程,使学生对要完成的任务有一个直观的认识,有助于培养学生建立逻辑思维的认知和能力。

在C++程序设计多媒体课件中,为了增强交互性,每一章都有“导航”菜单,方便跳转到不同的小节;在每一节中,利用鼠标右键的功能制作了快捷导航菜单,可以跳转到具体的概念说明或例题等知识点的位置,方便教师讲解;同时,还增加了“画笔”的功能,可以拖动屏幕下方的画笔在课件上标注重点,添加注释。

3 C++程序设计多媒体课件的应用

由于FLASH软件动画功能灵活多样,具有丰富的色彩、形状表现力,且交互性强,特别是利用FLASH技术制作的文件因为占用的数据空间比较小,适合通过网络的渠道进行上传和大范围的传播,因此,基于FLASH制作的多媒体课件比传统的PPT课件具有明显的优势。

交互式C++程序设计多媒体课件以章节的顺序完成了整个课程全部内容的制作,在教学应用上主要体现在以下3个方面:

1) 科学组织实现碎片化的学习方式。

碎片化学习是大數据时代出现的一种新型学习方式,其特点是利用移动终端,在零散时间内快速获取信息。碎片化的学习更适合现代人快节奏的生活方式[4]。将多媒体课件中的概念解释(语法描述)经过适当的配音讲解,并根据具体内容提出目标和任务,通过录屏的方式制作成5~10分钟的“微课”,在课前分发给学生,指导学生观看,自主学习。因为课件本身就是视频的形式,且在制作时已充分考虑了趣味性和直观性,这样就使得“微课”的制作简单可行。

2) 丰富课堂形式,根据教学内容实现多种教学方式的混合教学。

无论是演示教学法、任务驱动教学法、情景教学法或讨论教学法,基于FLASH制作的多媒体课件都比传统的PPT课件更有表现力和感染力。例如在讲授循环结构这一节的内容时,就是用的情景教学法,用一个小猪吃食物长大的例子来描述前一时刻的小猪和吃了食物后的同一小猪的关系,从而推导出循环体:小猪+食物→小猪。通过这些生动有趣的例子,给学生留下了深刻的印象,进而帮助他们理解循环迭代的本质。

3) 导航功能齐全,互动性好,支持学生自主学习。

基于FLASH的交互式C++程序设计多媒体课件具有功能全面的导航系统,可以轻松地定位到某一知识点或具体的例题,还可以操纵按钮,进行回看或快进,适合学生在课后根据自身的学习进度进行自主学习,更好地理解课程的难点和重点。

经过一年的教学实践,采用C++程序设计多媒体课件替代PPT课件,取得了较好的效果,学生期末考试的优秀率由11%上升到19%。在C++程序设计课程结束后,有1学分的实践课程:C++课程设计,内容是学生自己改编一个大型的程序,在本年度的C++课程设计中,取得的效果更加瞩目,其中优良率占70%,优秀率由10%上升到20%,说明多媒体课件在培养学生的逻辑思维能力方面具有一定的优势。

4 结束语

综上所述,交互式C++程序设计多媒体课件结合了长期的实践教学经验,考虑了初学者的思维理念和实际情况,充分利用了FLASH动画的特点,直观展示了数据与程序在计算机内部的存储、运行情况,模拟了键盘、显示器等外设与计算机内存的输入输出过程,生动形象地讲述了面向对象的程序设计的各种概念和算法。尤其是“程序分析”和“算法演示”部分,应用动画实时跟踪程序运行的每条语句和算法每个步骤运行的结果,不用教师再进行另外的画图讲解,解决了本课程课时量少与课容量大的矛盾,有效地吸引学生视线,调动了学习兴趣,提高了学习能力。

参考文献:

[1] 黄娟. FLASH交互式课件的设计与制作:以“计算机应用基础”课程课件设计为例[J].电脑知识与技术,2018(3):208-209.

[2] 程晔.基于“任务-过程”的FLASH交互式课件开发与运用:以“国际货运代理实务”课程实践为例[J].现代商贸工业,2017(34):177-178.

[3] 李雪飞,李晶,余琍,等. 面向对象程序设计类课程实践教学改革[J].计算机教育,2017(7):118-121.

[4] 吴仁英,王坦. 翻转课堂:教师面临的现实挑战及因应策略[J]. 教育研究,2017(2):112-121.

[通联编辑:王力]

推荐访问:程序设计 多媒体课件 制作 开发 FLASH