完整案例导向的VFP教学平台建设

时间:2022-07-26 10:20:10

完整案例导向的VFP教学平台建设

摘要:分析VFP知识体系,论证构建一个完整案例的可能性及必要性。通过对学生管理系统进行详细设计,结合案例和VFP相关功能,研究教学课件的功能及主要组成部分,探讨学生管理系统开发及课程学习网站建设,为VFP课程的教学改革提供有益探索。

关键词:VFP课程;完整案例;教学平台

采用案例进行知识传授已经被证明是一个有效的教学方法[1-3],案例不仅可以促进学生对新知识的理解,还能提高其学习兴趣和教学互动效果。

不少研究都对Visual FoxPro(以下简称VFP)的案例教学进行过探讨,其中的一些文献[2]以任务驱动的教学理论为指导,探讨实践教学在VFP教改中的应用;而另一些文献[3]探讨基于案例的VFP教学中需要关注的一些问题。但以往基于案例的VFP教学所采用的案例是零散的、相互独立的,且案例的设计与VFP联系不紧密,不能反映VFP课程本身特点。

基于现代信息技术构建完善的教学环境是提高教学质量的重要保障[4],而能否构建一个系统的教学平台是其关键。将课程内容有机地整合到平台之中,从教学的组织、形式、实施与评价,教学的互动,学生的自主学习、学习积极性的调动,教学效果的考核等多个方面进行筹划,基于平台的支持,力争将教学改革思路由平台得到固化,从而推动全面的课程教学规范。

1VFP课程特点

VFP主要内容包括数据库管理系统中的表、数据库、查询、视图等内容;VFP函数、命令、语法;可视化面向对象开发的相关控件、集成开发所需的报表设计器、菜单设计器、项目管理等,它几乎包括了一个管理信息系统开发的所有必备工具,相比其他同类计算机课程,内容多、范围广是VFP课程的一个主要特点,也是教学中的一个难点。如Visual Basic仅包含BASIC语言及可视化面向对象编程,其他高级语言C、Java、C++等都是单纯的面向对象或过程的高级语言,而没有数据库管理功能;同样,专门的数据库管理系统,如SQL Server、Oracle等具有数据存储、处理等功能,专注数据的安全、系统的稳定、存取效率等,它们专业于某一方面,但是在实际开发中需要利用多个工具才能完成一个应用集成。

另一方面,无论是数据库部分还是面向对象编程部分,相比于一些大型数据库或其他高级语言,VFP所具有的易于理解及相对简单的功能都符合初学者学习,如数据库管理系统部分,它继承了xBASE的面向用户的特点,重点在表的操作;而类似于BASIC的高级语言也比较易于学习;利用可视化面向对象编程及重点在常用桌面控件的介绍,将抽象的面向对象编程变得更易于学习和掌握,相比于其他面向对象的集成开发环境,它还具有界面简单,功能实用的特点。

因此,VFP是数据库管理系统、面向过程、可视化面向对象、集成开发环境等信息技术很好的入门学习平台。VFP是很多高校的文科类学生及部分理工科类学生选修的专业基础课程,是全国计算机二级等级考试的可选语种之一,也是计算机三级(偏软)考试内容的一个重要组成部分。

VFP的特点是具有完整开发一个管理信息系统所需的工具,一般教材都涵盖了这方面知识[5-6],并依据相关内容进行章节划分,但知识体系前后关联较弱,在教学过程中,其常用方法是就相关章节进行讲授及实验,这导致了知识割裂,学生感觉内容多且繁杂,不利于理解和记忆。

2案例设计

针对VFP课程特点,我们可以设计一个完整且相对简单的学生管理系统案例,该系统保存有学生的基本信息及所修课程的详细记录,利用该系统可以方便地实现数据录入、更新、查询及报表的打印等常规功能。

采用学生管理系统作为教学案例,与授课对象紧密相关,学生对案例系统主要功能的理解不会有任何障碍,另外,前后关联的完整案例除了利于理解、不需要增加额外记忆材料外,最终开发完成的一个管理系统还可以使得学生对软件开发有一个初步的了解,并能提高学生的成就感,从而激发其求知欲望。

系统需要设计三张相互关联的数据表:学生表、课程表、成绩表。学生表保存有学生自然属性,课程表保存课程的相关属性,成绩表是以上两张表的子表(见图1)。

系统主要功能模块分别为数据处理、数据查询、报表输出、帮助。其中,数据处理又包含数据录入、修改、删除、查找等主要功能模块,所有数据处理都可以针对3张源表进行;而数据查询主要提供诸如针对课程、学生、班级等进行的各种考试成绩、学分等的汇总查询;报表可以输出不同要求的数据,如依班级、年级的学生名册,依某课程选修学生的考试成绩等;而帮助提供如系统说明,在线使用手册等功能外,还可以结合VFP一些控件的功能,编写诸如数据转换器、计时器等用户工具。表1给出了学生管理系统的主要功能模块。

在这些功能模块中,包含了一些有一定开发难度的模块,如自定义查找、模糊查询、万能报表、小工具等模块,这些模块一方面可以提供方便用户使用的功能,另一方面在实际教学及学生上机实现过程中,提供了教与学的创新空间。

3平台构建

为了将基于案例的教学固化为一个相对稳定的教学模式,需要开发相关支撑环境,主要包括教学课件、全部开发完成的学生管理系统、课程学习网站等。

3.1课件设计

案例的设计是服务于VFP课程教学,教学过程中可以通过学生管理系统的逐步实现对VFP相关知识进行讲解。但教学过程并不完全等同于系统开发过程,从方法论上讲,系统开发是利用已掌握的工具进行设计开发,而基于案例的教学目的是为了帮助学生掌握新的知识,并通过实际应用场景加深对所学内容的理解。

因此,围绕学生管理系统的课件设计既要依据教材的知识体系,同时,也以系统的实现作为案例进行知识讲解。

由于VFP本身的可操作性,基于案例的课件设计应介绍每次教学的主要内容以及与此相关的案例,而知识的讲解主要应以实现案例中相关模块及功能来进行演示。将课程的讲解与学生管理系统的实现相结合,课件应主要包括以下几个部分。

1) 数据库管理系统基本概念:提出学生管理系统可能涉及的数据,为防止数据冗余,需要构建3张表,基于3张表的内在关联引入关键字、主子表等概念。

2)VFP常用命令、函数及语法:由于存在不同的数据类型及数据处理的需要,引进函数的概念,介绍VFP中常用函数及命令,进一步介绍VFP语法及编程技巧。

3)VFP库表操作功能:利用VFP相关命令创建学生表、课程表及成绩表;讲解多表打开及使用;依据对表记录的处理学习表记录的添加、查找、删除和更新,当前指针的移动,创建索引;为构建学生表与成绩表或课程表与成绩表的主子表永久关系,需要创建数据库进而创建参照完整性等。库表的设计是一个信息管理系统的重点,而这部分知识正是VFP的核心。

4)Selct_SQL语句:针对实际查询及统计需要,引进查询的概念,讲解Selct_SQL,包括Select,From,Join,Where,Having,Group By,Order By,Into/In等子句。

5) 表单及控件:为方便用户对数据的处理,讲解表单及其控件的设计,引进可视化面向对象设计的概念。因为该部分内容很多,课件首先列出所授内容,而实际讲解应以案例的开发来进行。参照Window环境中常见的表单特征,主要讲解所有控件的主要属性、常用事件和方法:诸如用于显示的Caption属性;数据绑定型控件的Controlsource属性;用于用户输入控件的Value属性;容器控件的计数属性和集合属性;所有控件都具有的最小事件集;命令按钮的Click事件;表单的Load、Activate、Destroy事件;表单的Release、Refresh方法;列表框、组合框、选项按钮组的InterActiveChange事件等。总之,这一部分对讲解技巧要求较高,采用实际案例的讲解可以做到举一反三、提高学生进一步主动学习的积极性。

6) 类的讲解:为进一步深化面向对象的设计思想,讲解VFP中类的设计与使用,通过要求每个学生实验课上开发的学生管理系统之间的差异,可以利用子类的设计来创建各自独立风格的表单背景。

7) 报表设计:为输出不同的查询结果,诸如学生花名册、课程列表、某一课程不及格人数汇总等,讲解VFP报表的设计。

8) 菜单设计:首先列出类似图2所示的菜单,并解释其主要功能,再利用VFP菜单设计器进行具体实现。

9) 项目集成:为编译和完整的学生管理信息系统,讲解VFP的项目管理。

3.2学生管理系统及网站开发

针对完整教学案例,由教师预先利用VFP进行学生管理系统开发,实际开发的集成软件不仅需要具有表1所列的主要功能,为了教学方便,还应该尽量保证每一模块的可独立运行。

学生管理系统由主菜单统一进行功能调用,软件应遵循传统Windows风格,以表单、快捷菜单、工具栏提供给用户操作界面,表单界面的操作力争达到方便、实用的特点,充分利用诸如下拉列表框、选项按钮组、复选框等控件来提供给用户对有限数据的选择;以文本框及表格显示主子表的数据;以命令按钮或按钮组提交用户动作。

为方便教学,对表及其中的数据操作应以相应的程序文件来代替独立的命令或函数,完整的项目应力争包含VFP中所有对象。总体而言,模块化的设计思路不仅仅服务于程序设计,更为案例教学提供了保证。

VFP课程学习网站应主要包括学习资源、答疑平台、讨论社区、自我测试、知识拓展等功能模块。其中学习资源存有教学课件、教学录像、教师预先开发的完整教学案例等媒体资料;在答疑平台里除了提供互动的问题解答,也可以预先存有常见问题的解答库,以便学生及时得到解答;讨论社区主要基于BBS提供一个学习交流平台;自我测试初始可以基于试卷库提供整套试卷的学生随机检测,在条件完善的情况下,可以提供更为灵活的随机出卷机制,学生可以在线定义考卷特点,系统利用组卷算法从后台试题库中抽取试题实现自动出卷,并能立即反馈考查结果;知识拓展可以基于学生管理系统的设计与实现提供相关资源链接,以拓展学生的知识面。

另外,针对完整案例教学特点,课程学习网站还应有“学生优秀模块” 展示及“开发互动”、“开发讨论”等栏目。同时,还可以开发一个学生空间,允许学生上传自己的开发作品,利用诸如在线投票等有趣有效的方式决定该模块是否存留及存留时间,以激发学生的开发热情。

4结语

在我们的实际教学过程中,已有部分教师采用本文介绍的完整案例进行VFP教学,从历年学生参加当届计算机二级VFP考试的通过率以及教学反馈来看,其教学改革效果非常明显。而为实现一个学生管理系统,就一般教材而言[5-6],几乎不需要调整教材的前后顺序且教材的绝大部分内容可以直接服务于信息系统的开发,另外,完成一个单机版的学生管理信息系统的开发几乎可以全部采用教材所介绍的知识,这样做提高了基于完整案例进行VFP课程教学的可行性。

我们下一步的工作是依据本文的研究构建或完善相关平台,为提高课程教学质量提供支持。

参考文献:

[1] Boehrer J, Linsky M. Teaching with cases: Learning to Question[J]. New Directions for Teaching and Learning, 1990(42): 41-57.

[2] 陈志敏,赵耀. 高校非计算机专业VFP程序设计语言教学探讨[J]. 计算机教育,2010(7):127-129.

[3] 赵月爱. VFP课程教学改革与实践[J]. 教育理论与实践,2008,28(10):46-47.

[4] 吴庚生,钟晓流. e-时代的教学环境[J]. 实验技术与管理,2009,26(3):1-5.

[5] 严明,单启成. Visual FoxPro教程[M]. 苏州:苏州大学出版社,2008:1-3.

[6] 全国计算机等级考试教材编写组. 全国计算机等级考试教程二级Visual FoxPro[M]. 北京:人民邮电出版社,2007:1-3.

Construction of the VFP Teaching Platform Based on Integrated Cases

LI Guang-shui, MA Qing-xia

(Information Technology Department of JinLing Institute of Technology, Nanjing 211169, China)

Abstract: After analysing knowledge structure of the course, it’s proved necessary and possible to do VFP education by taking advantage of the integrated cases. On the basis of designing out the student management system, how to structure teaching courseware, develop the information system and the website are discussed. This study can provide the reference to VFP teaching reform.

Key words: VFP course; integrated cases; teaching platform

上一篇:计算机科学与技术专业应用型本科师资队伍建设... 下一篇:《操作系统》课程的教学体会