计算机编程类网络课程构建探索

时间:2022-04-10 08:32:00

计算机编程类网络课程构建探索

1网络课程概述

1.1网络课程的基本涵义教育部现代远程教育资源建设委员会在《现代远程教育资源建设技术规范》(2000)中提出:网络课程就是通过网络表现的某门学科的教学内容及实施的教学活动的总和J。从这个定义看出,网络课程包括两个组成部分:即按一定的教学目标、教学策略组织起来的教学内容及网络教学支撑环境或网络教学平台。其中,教学内容是以提供教学资源为主,网络教学平台是以提供网络教学交流环境和学习工具为主,都是网络课程构建的重点和难点J。

1.2编程类网络课程特点

不同类型的课程本身具有不同的特点,这是开发网络课程时必须考虑的。通过研究计算机编程类课程,我们认为,编程类网络课程具有以下特点:①编程本身是一种技能,应该引导学生快速入门,掌握编程的基本过程;②上机实验操作很重要;③可以导入编程案例引导教学,不断让学生掌握从简单到复杂的案例;④需要随时介绍一些计算机程序编制的技巧;⑤有国家及省级等考试大纲和考题作为部分学习指引;⑥因为编程用到大量的英文单词,所以能够以英语单词作为关键词制作索引;⑦网上资源丰富、学习网站较多,可以向学生推荐j。

2编程类网络课程结构构建

网络课程的结构存在共性,其构建应该符合网络课程的自身特征,同时不同的网络课程的结构根据其特征又有所不同。由于参加网络学习的学生一般都是以自主学习为主,因此该网络课程的构建是以建构主义学习理论为指导,创设了以学生自主学习为主、以协作学习为辅的学习情境。在该网络课程的构建中,我们根据编程类的网络课程的特点,合理编排课程结构,为学生的学习提供了各种学习支持以及文本、视频、音频等多媒体学习资源以供学生学习与参考。在“在线测试与自动评判”模块的设计中,运用了自我反馈策略,对学生的学习情况进行评价并自动反馈评价结果。

该网络课程的结构构建包括:

2.1课程信息主要包括了课程简介、课程特色、课程沿革、教学大纲、实验大纲、考核大纲、教学计划、教学方法、师资队伍等几个方面的内容。

2.2学习导航

主要是引导学生怎么利用该网络课程J。

2.3初学入门

通过六个步骤帮助学生快速入门,掌握编程的基本过程,其目的是引导学生能够尽快地上机进行操作实践,这一点是非常重要的。

2.4课程学习

课程学习模块主要包括课程内容和课程资源两部分。网络课程的主要内容,按照章节排布、顺序进.行理论学习和实践,有较好的知识结构、导航结构。

课程资源分课件资源、音频资源、课程录像,课程资源可下载也可以网上点播。

2.5案例学习

案例学习根据难易程度分为简单案例学习和复杂案例学习。简单案例学部分是安排在各章节的学习过程中。例如:用一元二次方程求解、评委评分、排序等几个重要编程案例引导教学。复杂案例学习是在完成相关联的章节或整个课程学习之后,试图让学生编制应用程序的框架结构。例如:用专家系统外壳、麻将对牌游戏、超市收费系统等几个大中型程序的编制深入引导教学。

2.6学习支持

编程类网络课程的学习支持主要包括关键词汇-5J、参考资料、等级考试。

2.7实验操作

实验操作部分主要包括课程实验大纲、课程实验指导书、课程实验报告、课程实验成果、课程实验部分样本、资料,给出常用工具、材料、要求。

2.8在线测试与自动评判

练习和测试模块主要包括了在线练习测试和可以下载的测试试题以及对应的答案J。这个模块的功能是能实现程序的自动评判,也就是说,当学生在线编好了程序,点击提交的时候,系统能对程序做出判断。

2.9互动学习

互动学习主要是通过师生聊天室、电子邮件、答题集锦和BBS方式来实现师生的互动交流学习,从而解答学生的疑问,并提高了学生的学习参与度。

3编程类网络课程重点内容剖析

3.1初学入门通过

深入到在校学生的《程序设计(VB)》学习课堂,对学生的学习情况进行观察分析,发现学生在VB学习课程进行到一半时,大部分学生对VB程序设计的理念还不了解,在实验过程中,大部分学生只是机械地照抄教师的程序代码段,并不了解其意思。

因此,在VB学习开始时,引导学生快速地对VB的整体编程思想进行大概的了解和感知是非常必要的。在本研究中,为了让初学者能在较短的时间内,对VB编程界面、编程思想、实际的编程操作和控件有系统和大概的了解,为以后的VB学习打下铺垫,我们精心设计了快速入门的6个步骤来引领初学者入门。六步骤如下:①打开VB编程软件;②添加控件和调整属性;③反应代码编制;④逻辑程序设计;⑤明确理解VB的核心机制;⑥存盘和退出。

VB的编程环境是图形化的界面,首先要将其打开,才能进行其他操作;控件是VB编程的必要组成,添加控件是VB编程的基础;添加控件以后,要让控件实现程序的功能,就必须进行代码的编制以及逻辑程序的设计;当我们完成了程序设计,接下来就是对编程的成果进行存盘和退出了。这6个步骤,从界面的打开到简单程序的编写,以及存盘的整个流程设计,既简单又完整地体现了整个VB编程流程,学生就可以对VB编程有初步的认识,进而可以通过这6个步骤的反复操练和理解,了解VB编程的内涵,对以后的学习也就有了方向。将这6个第25卷第5期钟琼等.计算机编程类网络课程构建研究491步骤的设计用动画的形式体现出来,能够为学生起到真正的引导入门作用。

3.2案例学习模块

案例学习模块包括简单案例学习和复杂案例学习,主要是运用案例引导学生掌握编程的重要技术、技巧和规划能力。简单案例学习运用于各个章节的学习中,以促进学生对各个章节内容的掌握和提高。

复杂案例学习部分主要是在VB各个章节的学习课程结束后安排的综合案例分析,以加深学生对VB编程的整体把握,提高学生的编程应用能力。案例学习模块的设计包括:案例的选择、案例的分析、案例的常见问题。

3.2.1案例的选择案例选择主要包括案例内容和案例难易程度的选择。案例难易程度的选择一般遵从由易到难的原则。简单案例的选择必须和各个章节的内容相对应。比如在设计“分支判断结构”一章中的案例学习时,可以设计出租车计价器、一元二次方程的求解等。在设计“循环结构”的案例中,可以设计排序、求1到n的阶乘之和等案例。复杂案例的选择就要从整体上来把握,这种案例的内容须涉及到VB中的大部分内容以及常见控件的应用,是一个大综合,拟设计实现一个小应用或者一个小游戏,如设计麻将对牌游戏、超市收费系统等。

3.2.2案例的分析案例分析主要包括:界面设计、控件编程、逻辑结构设计、对象和事件分析。

界面设计。界面设计是对整个VB程序的界面设计,特别是对于复杂案例,界面的整体框架设计和布局尤为重要。界面的设计涉及到窗体属性的修改、控件的选择和添加,以及控件属性的修改和界面布局的设计。比如在“一元二次方程的求解”案例中,该案例主要涉及a、b、C三个参数的输入和x1、】【2的结果输出,以及计算的实现。输入的内容用TextBox来呈现,输出的内容用Label来呈现,计算用Command按钮来实现。因此主要界面设计如图l所示。

逻辑结构。逻辑结构的设计也即程序的逻辑编程,通过分析程序的功能及逻辑结构,决定程序的逻辑结构编程。一元二次方程求解是典型的分支判断结构案例,其具体的逻辑结构为:当b2-4ac<0时,方程无实数根;当b_4ac=0时,方程有且只有两个相等的实数根;当b-4ac>0时,方程有两个不相等的实数根。

对象和事件分析。分析程序中的有关对象

件,比如说窗体事件、鼠标事件等等。在“一元二次方程求解”案例中主要涉及鼠标的Click事件:单击“计算”按钮事件和单击“清除”按钮事件。前者实现计算操作,根据输入参数不同,输出不同的结果,方程无实数根时弹出MsgBOX对话框,提示“该方程无实数根”,当方程有实数根时,输出x1和)【2的值。

单击“清除”按钮,将所有输入和输出的值清空。

控件编程。控件编程是把控件和程序结合起来,通过编写相应的代码,实现控件的操作。在“一元二次方程求解”案例中,根据逻辑结构、对象事件分析,编写实现“计算”和“清除”的相应代码以实现相应的功能。

3.2.3案例常见问题案例常见问题部分,列举了本案例学习过程中学生可能会遇到的一些问题,以及这些问题的参考答案。根据调查了解,在“一元二次方程求解”案例的学习过程中,学生主要遇到的问题如下:①变量未定义;②xl、x2没有输出值,要将x1、】【2的值赋给相应的Labe1.Caption,才能有相应的输出值;③当a值为空或为0时,单击“计算”按钮会出错,需要在程序中的ifelse条件中加入“a<>0”。

3.3在线测试与自动评判

根据自我反馈的教学设计策略,该模块在学生学习完一个单元或整体内容时,分别设计了与之相应的单元测试题和综合测试题,对学生的学习效果进行及时的评价。并且通过相关网络课程设计技术的运用,当学生提交测试题时,实现对学生的测试结果进行自动的评判,并及时反馈给学生评判的结果。

对学生的学习效果进行及时的评价和反馈,有利于学生了解自己的学习情况、提高和改进。

在线测试与自动评判模块的主要结构建构如图2所示。

在线测试与自动评判模块的用户管理部分主要

分为学生用户和管理员用户。学生用户的权限部分包括:选题、测试、提交答案。管理员用户的权限主要包括:试题库管理和学生信息管理。

在线测试与自动评判子系统功能的整体设计包括:题库设计、选题设计、自动评判设计。

题库设计。根据题型不同,题库设计分为3个子库:选择题题库、填空题题库、程序设计题题库l8J。管理员可以通过试题库管理对题库进行增加、修改和删除等操作。

选题设计。学生可以通过选题设置功能,自己确定要进行测试的题目类型以及题量。学生设置好题型和数量后,点击确定就可以自动生成相应题型和数量的试卷。比如:学生可以通过选题设置选择1O道选择题、10道填空题以及2道程序设计题,单击确定后就会生成一张相应的自测试卷。

自动评判设计。学生答题完毕,提交试卷,系统就自动对学生的答题情况进行评判J。对于选择题和填空题的评判比较简单,系统将把学生的答案和系统存储的正确答案进行比较,就能作出评判的结果。程序设计题的评判比较复杂,初步的评判流程如下:首先用户通过浏览器访向系统的代码提交页面,提交页面有个表单,表单包含一个输入框,可以将代码输入到输入框;点击提交表单后,服务器端将会根据提交的代码类型调用相应的编译器,对用户的代码进行编译。如果因为语法错误导致编译失败,将会终止程序,并将失败原因反馈给用户;如果编译成功,将会运行用户程序。由于每个程序都有时间和空间限定,如果用户超出限制,也将被终止运行,并反馈给用户终止的原因;如果运行成功,将接受题目预设样例输入,并且将运行后得到的结果与题目样例预设的输出对比,如果不一致,终止程序运行,向用户返回出错信息,同时将用户提交操作和评判结果信息写入系统数据库中,在线评判题结束。