论文部分内容阅读
摘 要:利用 Borland C++ Builder6.0软件和辅助性的课件制作工作,研究和实现了《C++程序设计》教学知识点演示系统,对于学生理解语法重难点,提高动手实践能力具有一定的促进作用。
关键词:C++ Builder;C++程序设计;教学知识点演示系统
一、研究背景和意义
C++程序设计是工科专业中一门重要的技术基础课程,涉及到算法、语言、程序设计方法等内容,是后续专业课程的重要前修课程。课程教学大纲中明确要求必须通过C语言进行初步的算法实践,这就要求在巩固理论教学的同时,必须通过上机练习、课后复习来提高学生的编程能力。鉴于多年的教学实践,该门课程在教学过程中,学生普遍存在“三难现象”:难理解、难深入、难动手。因此,在实践教学过程中,有必要进行教学手段的改革。普遍利用计算机辅助软件进行教学作为一种切实有效的辅助教学方式之一。基于各种程序设计语言的教学辅助平台也逐步引入到课堂教学中来。目前,常用的计算机辅助教学软件的开发模式一般是客户端/服务器端或者浏览器端/服务器端,在教学演示中用到的动画常用flash或者是程序设计语言自身的多线程、多媒体技术。
C++ Builder6.0是Inprise公司推出的基于C ++语言的RAD可视化集成开发工具。利用C++ Builder编程,可以快速、高效地开发出基于Windows环境的各类程序。选择C++Builder作为教学辅助软件开发语言,一方面其兼容C语言,其二快速的开发能力能激发学生的学习乐趣。通过在教学辅助软件开发中,引导学生进行部分模块的实践,有助于提高学生的计算机应用能力。利用 C++ Builder6.0制作知识点演示系统拟解决的主要问题有:
(1)根据教育的认知论,设计科学合理的教学设计,体现在教学大纲、教学内容等设计。
(2)设计通用的教学辅助演示程序并用于课堂教学,主要涵括:计算机基础知识多媒体教学演示(内存空间的构造等);关联语法点知识点的辅助图形演示(指针和数组、字符串指针、递归与栈等);典型结构化程序设计的演示;常用的基本算法演示(重点在函数调用演示、数组和链表等)。
(3)教学疑难点解析。
通过课程教学研究和课件的研制,找到突破《C++程序设计》难教与难学的途径,同时也希望能为一線教师在课堂教学中如何应用该教学法提供参考。应该说,这项旨在促进学生主动学习、自主发展的研究,对于激发学生的兴趣,促进学生更好地内化算法思想,学会利用程序语言编写程序解决问题和提高信息素养,也都具有最为现实的意义。
二、研究目标
通过课件的研制,进一步提高课题组整体教研水平,把握课程的重难点和发展趋势,突出扎实语法,突出算法应用的教学理念。在深入钻研《C++程序设计》教材教学方法的基础上,应用成熟的软件开发平台研制出适用于教师课堂教学和学生课后学习的教学课件,通过程序设计语言的学习,引导学生参与到课件的研制中来,提高动手能力。通过研制开发出《C++程序设计》教学课件,积累经验和教学素材,为后续平台的改进奠定基础。
三、研究过程
(一)《C++程序设计》课程重难点素材的制作
为考虑到教学素材以后的重用性和课件平台重构的需要,课件需要的文字、动画全部采用Flash形式,编译为swf文件,方便以后的重用,并且每份教学材料备有 word 、pdf和swf三种形式。
(二)完善了课程理论教学大纲、讲义和教学计划
按照新大纲的要求,结合多年的教学实践,制定了完善的理论大纲、讲义和教学进度表。课程教学基础材料完整,达到了课程新大纲的教学要求。
(三)建立了开发文档,研发了教学演示系统源代码
通过课件前期的需求研究和中后期的总体设计、详细设计,完成了各个模块在C++ Builder平台下的调用实现,完成了数据结构和算法的Flash动画演示,完成了文档的撰写,所有的文档资料利用Macromedia Flashpaper软件将word文档转换为pdf和swf文件格式,方便以后的查阅和修改。建立了该种课件开发的一般思路和技术路线,方便进行二次修改和完善。课件进一步弥补了课堂上板书教学方式的单一性,提高了课堂的听课和实践效果,课程的立体化教材得到了体现。
(三)主要技术细节
1、解决了程序定位素材的目录问题
通过相对目录函数get_dir_parent(String dir,int n)的编写,系统调用素材时将实现相对定位,这样方便程序以后的扩充和修改,只要将和原文件名和类型一致的素材放到指定目录,就可以实现调用输出。课件目录中doc用来存放课程资料、试卷;flash目录用来存放flash动画。
String get_dir_parent(String dir,int n)
//获取文件父目录,n表示级别,离根目录越近级别越高。
{ String st ; st = GetCurrentDir();
SetCurrentDir(dir);
for(int i=0;i { ChDir(".."); }
return GetCurrentDir();
}
2、利用cppwebBroswer组件调用素材,在窗体FormCreate事件中实现调用显示
OleVariant a,b,c,d;
WideString str;
str=get_dir_parent((ExtractFilePath(ParamStr(0))),1)+"\\doc\\chapter3.htm"; web->Navigate(str,a,b,c,d);
3、利用静态网页框架技术,实现树状目录导航
主要核心代码如下:
四、课件研制中的问题与展望
1、网络化功能欠缺
目前,课件主要的版本是单机版。采用单机版的目的是避免过多的涉及到网络编程,可以吸引学生参与进行,参与一些模块的编写。对于以后的课件的改进方向,网络化是一个重要的加强方向,考虑以后采用flex技术和平台对现有体系进行重构,提高课件网络的利用率。
2、智能化算法缺少
在课件研制过程中,没有进行一些网络化测试平台模块的开发,对答疑庫的建设还有待进一步进行设计。
3、程序的界面有待进一步改进
由于以后的操作系统和硬件平台是触摸式,有必要在界面的样式进行进一步地美化,增加交互性,尽量符合win8系统的样式特点。
4、移动平台可课件系统的研制
由于现在移动平台基本上基于操作系统的应用,有必要在日后的课件研发中采用新的技术构架。
参考文献
[1] 赵鑫.项目教学法在高职《网页设计与制作》课程教学中的应用[D].2009-2
[2] 张海燕.在VB程序设计教学中实施项目教学法的实践与研究[D].2007-3
[3] 陈超.项目教学法在美术班信息技术教学中的应用研究[D].2009-4
[4] 何志勇.项目教学法及其在中职技能教学中的应用[D].2010-5
[5] 高天哲.项目教学法在职业学校计算机教学中的应用研究[D].2008-6
[6] 张力.项目教学法在职业高中计算机专业课的应用研究[D].2008-7
[7] 张彬.项目教学法在中职《网页设计与制作》课程中的应用研究[D].2010
作者简介:
闵辉(1983-),男,江西南昌人,江西科技学院商学院,本科,讲师。研究方向:无线传感器网络。
关键词:C++ Builder;C++程序设计;教学知识点演示系统
一、研究背景和意义
C++程序设计是工科专业中一门重要的技术基础课程,涉及到算法、语言、程序设计方法等内容,是后续专业课程的重要前修课程。课程教学大纲中明确要求必须通过C语言进行初步的算法实践,这就要求在巩固理论教学的同时,必须通过上机练习、课后复习来提高学生的编程能力。鉴于多年的教学实践,该门课程在教学过程中,学生普遍存在“三难现象”:难理解、难深入、难动手。因此,在实践教学过程中,有必要进行教学手段的改革。普遍利用计算机辅助软件进行教学作为一种切实有效的辅助教学方式之一。基于各种程序设计语言的教学辅助平台也逐步引入到课堂教学中来。目前,常用的计算机辅助教学软件的开发模式一般是客户端/服务器端或者浏览器端/服务器端,在教学演示中用到的动画常用flash或者是程序设计语言自身的多线程、多媒体技术。
C++ Builder6.0是Inprise公司推出的基于C ++语言的RAD可视化集成开发工具。利用C++ Builder编程,可以快速、高效地开发出基于Windows环境的各类程序。选择C++Builder作为教学辅助软件开发语言,一方面其兼容C语言,其二快速的开发能力能激发学生的学习乐趣。通过在教学辅助软件开发中,引导学生进行部分模块的实践,有助于提高学生的计算机应用能力。利用 C++ Builder6.0制作知识点演示系统拟解决的主要问题有:
(1)根据教育的认知论,设计科学合理的教学设计,体现在教学大纲、教学内容等设计。
(2)设计通用的教学辅助演示程序并用于课堂教学,主要涵括:计算机基础知识多媒体教学演示(内存空间的构造等);关联语法点知识点的辅助图形演示(指针和数组、字符串指针、递归与栈等);典型结构化程序设计的演示;常用的基本算法演示(重点在函数调用演示、数组和链表等)。
(3)教学疑难点解析。
通过课程教学研究和课件的研制,找到突破《C++程序设计》难教与难学的途径,同时也希望能为一線教师在课堂教学中如何应用该教学法提供参考。应该说,这项旨在促进学生主动学习、自主发展的研究,对于激发学生的兴趣,促进学生更好地内化算法思想,学会利用程序语言编写程序解决问题和提高信息素养,也都具有最为现实的意义。
二、研究目标
通过课件的研制,进一步提高课题组整体教研水平,把握课程的重难点和发展趋势,突出扎实语法,突出算法应用的教学理念。在深入钻研《C++程序设计》教材教学方法的基础上,应用成熟的软件开发平台研制出适用于教师课堂教学和学生课后学习的教学课件,通过程序设计语言的学习,引导学生参与到课件的研制中来,提高动手能力。通过研制开发出《C++程序设计》教学课件,积累经验和教学素材,为后续平台的改进奠定基础。
三、研究过程
(一)《C++程序设计》课程重难点素材的制作
为考虑到教学素材以后的重用性和课件平台重构的需要,课件需要的文字、动画全部采用Flash形式,编译为swf文件,方便以后的重用,并且每份教学材料备有 word 、pdf和swf三种形式。
(二)完善了课程理论教学大纲、讲义和教学计划
按照新大纲的要求,结合多年的教学实践,制定了完善的理论大纲、讲义和教学进度表。课程教学基础材料完整,达到了课程新大纲的教学要求。
(三)建立了开发文档,研发了教学演示系统源代码
通过课件前期的需求研究和中后期的总体设计、详细设计,完成了各个模块在C++ Builder平台下的调用实现,完成了数据结构和算法的Flash动画演示,完成了文档的撰写,所有的文档资料利用Macromedia Flashpaper软件将word文档转换为pdf和swf文件格式,方便以后的查阅和修改。建立了该种课件开发的一般思路和技术路线,方便进行二次修改和完善。课件进一步弥补了课堂上板书教学方式的单一性,提高了课堂的听课和实践效果,课程的立体化教材得到了体现。
(三)主要技术细节
1、解决了程序定位素材的目录问题
通过相对目录函数get_dir_parent(String dir,int n)的编写,系统调用素材时将实现相对定位,这样方便程序以后的扩充和修改,只要将和原文件名和类型一致的素材放到指定目录,就可以实现调用输出。课件目录中doc用来存放课程资料、试卷;flash目录用来存放flash动画。
String get_dir_parent(String dir,int n)
//获取文件父目录,n表示级别,离根目录越近级别越高。
{ String st ; st = GetCurrentDir();
SetCurrentDir(dir);
for(int i=0;i
return GetCurrentDir();
}
2、利用cppwebBroswer组件调用素材,在窗体FormCreate事件中实现调用显示
OleVariant a,b,c,d;
WideString str;
str=get_dir_parent((ExtractFilePath(ParamStr(0))),1)+"\\doc\\chapter3.htm"; web->Navigate(str,a,b,c,d);
3、利用静态网页框架技术,实现树状目录导航
主要核心代码如下:
四、课件研制中的问题与展望
1、网络化功能欠缺
目前,课件主要的版本是单机版。采用单机版的目的是避免过多的涉及到网络编程,可以吸引学生参与进行,参与一些模块的编写。对于以后的课件的改进方向,网络化是一个重要的加强方向,考虑以后采用flex技术和平台对现有体系进行重构,提高课件网络的利用率。
2、智能化算法缺少
在课件研制过程中,没有进行一些网络化测试平台模块的开发,对答疑庫的建设还有待进一步进行设计。
3、程序的界面有待进一步改进
由于以后的操作系统和硬件平台是触摸式,有必要在界面的样式进行进一步地美化,增加交互性,尽量符合win8系统的样式特点。
4、移动平台可课件系统的研制
由于现在移动平台基本上基于操作系统的应用,有必要在日后的课件研发中采用新的技术构架。
参考文献
[1] 赵鑫.项目教学法在高职《网页设计与制作》课程教学中的应用[D].2009-2
[2] 张海燕.在VB程序设计教学中实施项目教学法的实践与研究[D].2007-3
[3] 陈超.项目教学法在美术班信息技术教学中的应用研究[D].2009-4
[4] 何志勇.项目教学法及其在中职技能教学中的应用[D].2010-5
[5] 高天哲.项目教学法在职业学校计算机教学中的应用研究[D].2008-6
[6] 张力.项目教学法在职业高中计算机专业课的应用研究[D].2008-7
[7] 张彬.项目教学法在中职《网页设计与制作》课程中的应用研究[D].2010
作者简介:
闵辉(1983-),男,江西南昌人,江西科技学院商学院,本科,讲师。研究方向:无线传感器网络。