一种交互式编程教学方法与流程

文档序号:24533687发布日期:2021-04-02 10:14阅读:63来源:国知局
一种交互式编程教学方法与流程

本发明涉及在线编译技术领域,更具体的说是涉及一种交互式编程教学方法。



背景技术:

在人工智能和认知技术急速发展的今天,场景感知的学习体验尤为重要。尤其是近些年来,随着互联网的快速蓬勃发展,学习编程也已经成为学生必不可少的一项技能。

但是,在传统的学习中,学生习惯以看视频去学习老师所讲的编程知识,但由于观看视频无法直接使用老师的课件,还需要学生将老师所编写的代码一点点下载并修改,同时需要自己配置环境、安装开发工具,才能学习并使用老师的代码以及资料。这种传统的视频录制过程繁琐,同时还存在成本大、视频体积过大、对网络要求过高等问题

因此,使得编程教学过程的录制,简单方便、成本低,且用户可以在线播放,在线编译是本领域技术人员亟需解决的问题。



技术实现要素:

有鉴于此,本发明提供了一种交互式编程教学方法,通过在线录制,使得编程教学过程的录制,简单方便、成本低,且用户可以在线实时编译,提高学习效率。

为了实现上述目的,本发明采用如下技术方案:

一种交互式编程教学方法,所述方法包括以下步骤:

s1、生成至少一个文件名菜单,

s2、获取操作事件信息,编程教学用代码及音频文件;

s3、将操作事件信息,编程教学用代码及音频文件关联后放入指定的文件名下,转换格式后保存至数据库中;

s4、从数据库中读取操作事件信息、编程教学用代码和音频文件,通过不同进程进行加载显示;

s5、获取修改后的编程教学用代码,转换格式后上传至服务器中;

s6、对修改后的编程教学用代码进行编译操作,并将编译结果返还显示。

优选的,所述操作事件信息为输入设备操作事件信息。

优选的,所述音频文件与输入设备操作事件信息依据时间关系进行匹配绑定。

优选的,所述转换格式为json数据格式。

优选的,所述步骤s3具体包括:

s31、从数据库中读取编程教学用代码,事件操作信息和音频信息;

s32、加载音频信息和事件操作信息;

s33、开启两个进程,一个进程播放音频信息,另一个进程播放事件操作信息,两个进程通过时间关系链接。

优选的,所述步骤s4具体包括:

s41、获取修改后的编程教学用代码;

s42、将文件名与修改后的编程教学用代码对应,转换为json格式提交至服务器;

s43、服务器根据文件名参数在指定目录创建与文件名相同的文件,再将文件名对应的修改后的编程教学用代码写入到文件中;

s44、执行linux命令对创建的文件进行编译、运作;

s45、将编译结果返还显示。

优选的,服务器内设置有开发环境与开发工具。

经由上述的技术方案可知,与现有技术相比,本发明公开提供了一种交互式编程教学方法,通过在线录制,使得编程教学过程的录制,简单方便、成本低,且用户可以在线实时编译,提高学习效率。

综上所述,本发明具有以下优点:

1、老师在线便能完成对于编程教学过程的录制,简单方便、成本低;

2、可以在线编译,省去了开发环境的配置、开发工具的安装;

3、学生可以直接在线播放,节省流量,并且可以随时使用老师的代码进行编辑、运行。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1附图为本发明提供的整体流程示意图。

图2附图为本发明提供的步骤s3的流程示意图。

图3附图为本发明提供的步骤s4的流程示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例公开了一种交互式编程教学方法,包括以下步骤:

s1、生成至少一个文件名菜单,

s2、获取操作事件信息,编程教学用代码及音频文件;

s3、将操作事件信息,编程教学用代码及音频文件关联后放入指定的文件名下,转换格式后保存至数据库中;

s4、从数据库中读取操作事件信息、编程教学用代码和音频文件,通过不同进程进行加载显示;

s5、获取修改后的编程教学用代码,转换格式后上传至服务器中;

s6、对修改后的编程教学用代码进行编译操作,并将编译结果返还显示。

为进一步优化上述技术方案,操作事件信息为输入设备操作事件信息。

为进一步优化上述技术方案,音频文件与输入设备操作事件信息依据时间关系进行匹配绑定。

为进一步优化上述技术方案,转换格式为json数据格式。

为进一步优化上述技术方案,步骤s3具体包括:

s31、从数据库中读取编程教学用代码,事件操作信息和音频信息;

s32、加载音频信息和事件操作信息;

s33、开启两个进程,一个进程播放音频信息,另一个进程播放事件操作信息,两个进程通过时间关系链接。

为进一步优化上述技术方案,步骤s4具体包括:

s41、获取修改后的编程教学用代码;

s42、将文件名与修改后的编程教学用代码对应,转换为json格式提交至服务器;

s43、服务器根据文件名参数在指定目录创建与文件名相同的文件,再将文件名对应的修改后的编程教学用代码写入到文件中;

s44、执行linux命令对创建的文件进行编译、运作;

s45、将编译结果返还显示。

为进一步优化上述技术方案,服务器内设置有开发环境与开发工具。

老师开始录制之后,系统会在页面左侧生成十个文件名菜单,用户在录制之前可以自定义文件名;菜单右侧是代码编写区域以及运行结果展示区域,用户可以点击不同的文件名,切换不同的代码输入区域进行多文件编写。系统会自动监听用的每一个键盘的操作,监听每一个按钮的事件,系统会将所有的操作事件、文件名与相应文件内容对应的方式的通过json的数据格式保存在mysql数据库中。

浏览器在持续录音、记录老师讲课的内容,录制完成之后点击保存,系统会把这些操作信息、老师编写的代码以及录音都提交到服务器保存到mysql数据库中。

在观看已经录制好的编程操作时,系统会从mysql数据库中读取保存的代码内容、老师的操作信息以及音频文件,系统加载录制的音频文件和操作数据,然后开启两个进程,一个进程播放音频文件(简称:音频进程),一个进程把操作数据渲染到播放器内(简称:日志进程)。当用户点击播放按钮,音频进程开始播放,同时日志进程也开始播放;当用户点击暂停播放按钮,音频进程暂停,同时日志进程也暂停。通过两个进程之间的通过时间关系进行链接,来完成录制数据的回放功能。

编译时,系统会把当前页面的文件名以及文件内容一一对应,通过json格式提交到服务器,服务器会根据客户端提交的文件名参数在编译服务器指定目录创建与文件名相同的文件,再将文件名对应的代码写入到文件中,系统通过执行用户指定的现有的编程语言对应的编译、运行的linux命令对创建的文件进行编译、运行,最后将运行结果返回给客户端,呈现在页面上结果的展示区。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1