CN110379257B - 一种多语言跨平台的在线代码对战系统和方法 - Google Patents

一种多语言跨平台的在线代码对战系统和方法 Download PDF

Info

Publication number
CN110379257B
CN110379257B CN201910511654.3A CN201910511654A CN110379257B CN 110379257 B CN110379257 B CN 110379257B CN 201910511654 A CN201910511654 A CN 201910511654A CN 110379257 B CN110379257 B CN 110379257B
Authority
CN
China
Prior art keywords
user
game
code
end system
server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201910511654.3A
Other languages
English (en)
Other versions
CN110379257A (zh
Inventor
吴宗泽
梁泽逍
安新锋
李晓娜
李建中
郭心德
王邓望
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangdong University of Technology
Original Assignee
Guangdong University of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangdong University of Technology filed Critical Guangdong University of Technology
Priority to CN201910511654.3A priority Critical patent/CN110379257B/zh
Publication of CN110379257A publication Critical patent/CN110379257A/zh
Application granted granted Critical
Publication of CN110379257B publication Critical patent/CN110379257B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B19/00Teaching not covered by other main groups of this subclass
    • G09B19/0053Computers, e.g. programming

Abstract

本发明提供了一种多语言跨平台的在线代码对战系统,包括用户终端、前端系统、后端系统;用户终端用于向用户提供可编辑界面和人机交互接口;前端系统包括前台服务器,用于支持用户终端,向用户提供对战系统中与游戏相关的可编辑界面;后端系统包括后台服务器、存储服务器、目标机和宿主机;后台服务器用于从前台服务器获取用户从所述可编辑界面输入的原始代码,根据原始代码的编程语言类型调用对应的宿主机服务器;宿主机包括多台宿主机服务器,用于接收用户终端发送的原始代码并进行处理生成对应的目标机器代码目标机包括多台目标机服务器,用于接收对应的目标机器代码并产生结果文件,然后将结果文件返回至用户终端。

Description

一种多语言跨平台的在线代码对战系统和方法
技术领域
本发明涉及在线教育技术领域,尤其涉及一种多语言跨平台的在线代码对战系统和方法。
背景技术
随着互联网技术的高速发展,编程学习人数急剧增长,由于在线编程教育结合了在线平台的交互性、高效性、普及性,既满足教学质量的要求,又适应了编程教育的复杂性,在线编程教育在国内开始风靡。
然而,当前国内的在线编程学习平台,未脱离视频教学、PPT教学等古板老套的传统教学方法,教师通常在教育平台上发布与课程相关的资源,如视频、大纲、文档、练习题等,使得学生获取知识的途径是简单的、线性的、被动接受的方式;另外现在的在线编程学习平台无法支持跨编程语言,仅能支持单一或部分简单的编程语言,不便于用户进行多语言学习;另外由于不同的计算机装载不一样的操作系统,如Windows、Linux、Mac等等,现有的在线编程学习平台无法实现跨平台学习。
发明内容
本发明为解决现有的在线编程学习平台无法实现多语言、跨平台支持,同时无法满足教学需求等问题,提供了一种多语言跨平台的在线代码对战系统和方法。
为实现以上发明目的,而采用的技术手段是:
一种多语言跨平台的在线代码对战系统,包括用户终端、前端系统、后端系统,
所述用户终端包括电脑、平板、手机的任意一种或多种设备,不同设备搭载有相同或不同的操作系统,用于向用户提供可编辑界面和人机交互接口;
所述前端系统包括前台服务器,用于支持用户终端,向用户提供所述对战系统中与游戏相关的可编辑界面;
所述后端系统包括后台服务器、存储服务器、目标机和宿主机;
所述后台服务器用于从所述前台服务器获取用户从所述可编辑界面输入的原始代码,根据原始代码的编程语言类型调用对应的宿主机服务器;所述原始代码使用任意一种或多种编程语言;
所述宿主机包括多台宿主机服务器,用于接收所述用户终端发送的原始代码并进行处理生成对应的目标机器代码;
所述目标机包括多台目标机服务器,不同目标机服务器运行有不同的服务器操作系统;用于接收对应的目标机器代码并产生结果文件,然后将所述结果文件返回至用户终端。
上述方案中,由于系统可供选择多种操作系统,用户可以通过不同的的操作系统输入不同编程语言类型的代码,然后再由后端系统调用对应的服务器处理,从而实现了该系统多语言和跨平台的功能。
优选的,所述宿主机服务器部署有相同或不同的编译器,用于对对应编程语言类型的原始代码进行编译处理并生成对应的目标机器代码。
优选的,所述存储服务器包括数据库服务器和文件服务器,所述数据库服务器用于提供保存用户数据、游戏数据以及编程语言类型的相关数据的数据库,所述文件服务器用于保存原始代码文件。
优选的,所述数据库服务器包括的表格有:
a.用户表,存储用户个人信息数据,包括:用户ID、用户个人姓名、用户创建时间、用户头像路径、用户积分;
b.游戏表,存储所述在线代码对战系统中每个游戏的相关信息数据,包括:游戏ID、游戏名称、支持代码的编程语言类型、游戏运行的次数、时间和游戏简介;
c.游戏记录表,记录每次运行游戏的信息数据,包括:游戏对战双方的用户ID、游戏结果记录、游戏结果文件、游戏运行时间;
d.代码的编程语言种类表,记录编程语言的类型和名称;
e.权限表,记录用户ID以及用户ID所对应的权限。
优选的,所述前端系统为解耦式前端布局,还包括分别与前台服务器连接的首页展示模块、后台管理展示模块和游戏画面显示模块;
首页展示模块:用于创建前端系统中关于首页的所有视图对象和控制对象,并通过分页插件显示于用户终端的可编辑界面;
后台管理展示模块:用于创建前端系统中关于后台管理的所有视图对象和控制对象,并通过分页插件显示于用户终端的可编辑界面;
游戏画面显示模块:用于创建前端系统中关于游戏的所有视图对象和控制对象,并通过分页插件显示于用户终端的可编辑界面。
优选的,所述后端系统还包括分别与后台服务器连接的:
A.用户管理模块,用于处理用户的相关业务,包括用户登录注册子模块、用户列表子模块和用户个人详情子模块:
A1.用户登录注册子模块,用于接收用户进行登录注册的第一请求,然后通过存储服务器对进行登录注册请求的用户的密码进行加密处理后存储于数据库,并对发出所述第一请求的用户的邮箱进行校验认证;
A2.用户列表子模块和用户个人详情子模块,用户列表子模块用于从数据库读取用户表,通过前端系统显示于用户终端的可编辑界面;用户个人详情子模块用于根据用户进行登录注册的第一请求中匹配用户ID,并根据用户ID查询数据库,返回用户的个人详情数据,通过前端系统显示于用户终端的可编辑界面;
B.游戏管理模块,用于处理游戏相关业务,包括游戏列表子表模块、游戏发布子模块、游戏状态管理子模块:
B1.游戏列表子模块,用于从数据库读取游戏表,通过前端系统显示于用户终端的可编辑界面;
B2.游戏发布子模块,用于接收前端系统发送的游戏发布信息,然后将所述游戏相关信息写入数据库,通过前端系统显示于用户终端的可编辑界面;
B3.游戏状态管理子模块,用于前端系统发送的游戏状态信息,然后将所述游戏状态信息写入数据库,通过前端系统显示于用户终端的可编辑界面;
C.游戏记录模块,用于接收前端系统发送的游戏对战信息,然后将所述游戏对战信息写入数据库;
D.对战逻辑模块,用于接收用户进行游戏选择的第二请求以及进行对战用户选择的第三请求,处理用户从所述可编辑界面输入的原始代码,并传输至后台文件处理模块对原始代码进行编译处理;
E.后台文件处理模块,预设有对应所述不同操作系统的批处理文件,用于将原始代码调用并写入对应操作系统的批处理文件,并在所述批处理文件中,根据原始代码的编程语言类型调用对应的编译器,对原始代码进行编译处理并产生结果文件,通过前端系统显示于用户终端的可编辑界面。
优选的,所述设备搭载的操作系统为windows、Linux、Mac OS中的任意一种操作系统。
优选的,所述目标机服务器运行的服务器操作系统包括Windows、Linux系统。
本发明还提供了一种多语言跨平台的在线代码对战方法,包括以下步骤:
S1.后端系统通过前端系统接收用户在用户终端输入的进行登录注册的第一请求,然后对进行登录注册请求的用户的密码进行加密处理后并存储,对用户的邮箱进行校验认证;
S2.后端系统读取用户表和游戏表,并通过前端系统显示于用户终端的可编辑界面;
S3.后端系统通过前端系统接收用户在用户终端输入的进行游戏选择的第二请求以及进行对战用户选择的第三请求;然后将所述游戏和所述对战用户的相关数据通过前端系统显示于用户终端的可编辑界面;
S4.后端系统通过前端系统获取用户输入的原始代码,并根据所述第二请求中的游戏名称创建文件夹,复制所述原始代码至所述文件夹形成源码文件;然后根据现有的文件系统结构和组织参数调用并写入已经预设的批处理文件;
S5.在所述批处理文件中,调用与原始代码的编程语言类型相对应的编译器对所述源码文件进行编译处理,生成对应的目标机器代码;若目标机器代码出错,则返回步骤S4,否则进行下一步;
S6.所述目标机器代码返回至目标机运行,产生结果文件;将所述结果文件中的临时文件删除后进行存储;
S7.根据所述结果文件读取结果字符,并添加为游戏记录;
S8.所述结果文件通过前端系统显示于用户终端的可编辑界面。
优选的,步骤S5中所述的在所述批处理文件中,调用与原始代码的编程语言类型相对应的编译器对所述源码文件进行编译处理,生成对应的目标机器代码的具体步骤包括:扫描原始代码;对原始代码进行语法分析,得到原始代码的结构元素及其关系;对原始代码进行语义分析,确定原始代码运作的过程和动作;优化原始代码,生成目标机器代码。
与现有技术相比,本发明技术方案的有益效果是:
本发明的在线代码对战系统通过让用户进行代码游戏比赛,在游戏过程中学习相应的编程,增加了编程学习的趣味性;在本在线代码对战系统中,用户可选择不同的操作系统进行编程游戏,后台文件处理模块会根据用户输入的原始代码的语言类型调用与其操作系统相对应的编译器进行处理,实现跨平台功能的同时实现跨语言功能,满足各种编程语言使用者的需求。解决了现有的在线编程学习平台无法实现多语言、跨平台支持,同时无法满足教学需求等问题。
附图说明
图1为本发明系统的工作框图。
图2为本发明系统中后端系统的工作框图。
图3为本发明方法的流程图。
具体实施方式
附图仅用于示例性说明,不能理解为对本专利的限制;
为了更好说明本实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;
对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
下面结合附图和实施例对本发明的技术方案做进一步的说明。
实施例1
一种多语言跨平台的在线代码对战系统,如图1所示,包括用户终端、前端系统、后端系统;
所述用户终端包括电脑、平板、手机的任意一种或多种设备,不同设备搭载有相同或不同的操作系统,用于向用户提供可编辑界面和人机交互接口;其中,所述设备搭载的操作系统为windows、Linux、Mac OS中的任意一种操作系统;
所述前端系统包括前台服务器,用于支持用户终端,向用户提供所述对战系统中与游戏相关的可编辑界面;
所述后端系统包括后台服务器、存储服务器、目标机和宿主机;
如图2所示,所述后台服务器用于从所述前台服务器获取用户从所述可编辑界面输入的原始代码,根据原始代码的编程语言类型调用对应的宿主机服务器;所述原始代码使用任意一种或多种编程语言;
所述宿主机包括多台宿主机服务器,用于接收所述用户终端发送的原始代码并进行处理生成对应的目标机器代码;
所述目标机包括多台目标机服务器,不同目标机服务器运行有不同的服务器操作系统;用于接收对应的目标机器代码并产生结果文件,然后将所述结果文件返回至用户终端;其中,所述目标机服务器运行的服务器操作系统包括Windows、Linux系统。
其中,所述宿主机服务器部署有相同或不同的编译器,用于对对应编程语言类型的原始代码进行编译处理并生成对应的目标机器代码。
其中,所述存储服务器包括数据库服务器和文件服务器,所述数据库服务器用于提供保存用户数据、游戏数据以及编程语言类型的相关数据的数据库,所述文件服务器用于保存原始代码文件。
其中,所述数据库服务器包括的表格有:
a.用户表,存储用户个人信息数据,包括:用户ID、用户个人姓名、用户创建时间、用户头像路径、用户积分;
b.游戏表,存储所述在线代码对战系统中每个游戏的相关信息数据,包括:游戏ID、游戏名称、支持代码的编程语言类型、游戏运行的次数、时间和游戏简介;
c.游戏记录表,记录每次运行游戏的信息数据,包括:游戏对战双方的用户ID、游戏结果记录、游戏结果文件、游戏运行时间;
d.代码的编程语言种类表,记录编程语言的类型和名称;
e.权限表,记录用户ID以及用户ID所对应的权限。
其中,所述前端系统为解耦式前端布局,还包括分别与前台服务器连接的首页展示模块、后台管理展示模块和游戏画面显示模块;
首页展示模块:用于创建前端系统中关于首页的所有视图对象和控制对象,并通过分页插件显示于用户终端的可编辑界面;在本实施例1中,前端系统采用解耦式前端布局,在基础页面模板文件中,包涵了多个html文件,分别是网站的标题、头部、主体、底部的网站基础部分等,以此为网站前端页面基础模板,其他页面将继承公共模板的html文件,只修改相应的主体部分,这样将保持整个网站风格统一,导航栏、标题栏以及底部信息统一。在此基础上,其他页面的开发将实现了解耦性。以“游戏列表”页为例子:首先继承基础页面模板文件,获取了菜单、导航栏、底部等网页部分展示,然后将标题部分重写成该页面的标题。主体部分接收后台传递过来的游戏列表,然后添加点击链接,传递游戏ID给后台,实现点击游戏名称就传递游戏ID给后台的功能;最后添加分页插件,以实现分页、翻页功能;
后台管理展示模块:用于创建前端系统中关于后台管理的所有视图对象和控制对象,并通过分页插件显示于用户终端的可编辑界面;在本实施例1中,通过抽离公用部分为单独的html文件,然后用一个基础html模板包含进菜单栏、标题栏、尾部的网页基础部分等等,然后其他html文件继承这个基础html,再重写其中的主体部分即可。
游戏画面显示模块:用于创建前端系统中关于游戏的所有视图对象和控制对象,并通过分页插件显示于用户终端的可编辑界面;在本实施例1中,游戏画面显示模块主要利用了HTML5新增的Canvas标签和JavaScript配合实现。在Canvas这个画布上,利用JavaScript读取返回过来的结果数组,然后根据数组动态地在画布上绘制对战的过程。
其中,所述后端系统还包括分别与后台服务器连接的:
A.用户管理模块,用于处理用户的相关业务,包括用户登录注册子模块、用户列表子模块和用户个人详情子模块:
A1.用户登录注册子模块,用于接收用户进行登录注册的第一请求,然后通过存储服务器对进行登录注册请求的用户的密码进行加密处理后存储于数据库,并对发出所述第一请求的用户的邮箱进行校验认证;由于用户的密码属于敏感信息,存入数据库时需做加密处理;用户邮箱也需校验认证,不能同一邮箱重复注册,因此本实施例1在配置文件中写好MD5加密的密钥,用于进行加密处理,并加入验证码验证等辅助逻辑;
A2.用户列表子模块和用户个人详情子模块,用户列表子模块用于从数据库读取用户表,通过前端系统显示于用户终端的可编辑界面;用户个人详情子模块用于根据用户进行登录注册的第一请求中匹配用户ID,并根据用户ID查询数据库,返回用户的个人详情数据,通过前端系统显示于用户终端的可编辑界面;
B.游戏管理模块,用于处理游戏相关业务,包括游戏列表子表模块、游戏发布子模块、游戏状态管理子模块:
B1.游戏列表子模块,用于从数据库读取游戏表,通过前端系统显示于用户终端的可编辑界面;
B2.游戏发布子模块,用于接收前端系统发送的游戏发布信息,然后将所述游戏相关信息写入数据库,通过前端系统显示于用户终端的可编辑界面;
B3.游戏状态管理子模块,用于前端系统发送的游戏状态信息,然后将所述游戏状态信息写入数据库,通过前端系统显示于用户终端的可编辑界面;
C.游戏记录模块,用于接收前端系统发送的游戏对战信息,然后将所述游戏对战信息写入数据库;
D.对战逻辑模块,用于接收用户进行游戏选择的第二请求以及进行对战用户选择的第三请求,处理用户从所述可编辑界面输入的原始代码,并传输至后台文件处理模块对原始代码进行编译处理;
E.后台文件处理模块,预设有对应所述不同操作系统的批处理文件,用于将原始代码调用并写入对应操作系统的批处理文件,并在所述批处理文件中,根据原始代码的编程语言类型调用对应的编译器,对原始代码进行编译处理并产生结果文件,通过前端系统显示于用户终端的可编辑界面。将用户输入的代码写入批处理文件中,需要调用编译器来执行编译运行工作,本在线代码系统将部署在云服务器中,而云服务器的运行环境为Linux操作系统,与本地编程环境的Windows操作系统区别较大,通过批处理文件形式也是为了为多语言提供强大的支持。
实施例2
一种多语言跨平台的在线代码对战方法,如图3所示,包括以下步骤:
S1.后端系统通过前端系统接收用户在用户终端输入的进行登录注册的第一请求,然后对进行登录注册请求的用户的密码进行加密处理后并存储,对用户的邮箱进行校验认证;
S2.后端系统读取用户表和游戏表,并通过前端系统显示于用户终端的可编辑界面;
S3.后端系统通过前端系统接收用户在用户终端输入的进行游戏选择的第二请求以及进行对战用户选择的第三请求;然后将所述游戏和所述对战用户的相关数据通过前端系统显示于用户终端的可编辑界面;
S4.后端系统通过前端系统获取用户输入的原始代码,并根据所述第二请求中的游戏名称创建文件夹,复制所述原始代码至所述文件夹形成源码文件;然后根据现有的文件系统结构和组织参数调用并写入已经预设的批处理文件;
S5.在所述批处理文件中,调用与原始代码的编程语言类型相对应的编译器对所述源码文件进行编译处理,具体步骤包括:扫描原始代码;对原始代码进行语法分析,得到原始代码的结构元素及其关系;对原始代码进行语义分析,确定原始代码运作的过程和动作;优化原始代码,生成目标机器代码;生成对应的目标机器代码;若目标机器代码出错,则返回步骤S4,否则进行下一步;
S6.所述目标机器代码返回至目标机运行,产生结果文件;将所述结果文件中的临时文件删除后进行存储;
S7.根据所述结果文件读取结果字符,并添加为游戏记录;
S8.所述结果文件通过前端系统显示于用户终端的可编辑界面。
附图中描述位置关系的用语仅用于示例性说明,不能理解为对本专利的限制;
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。

Claims (8)

1.一种多语言跨平台的在线代码对战系统,其特征在于,包括用户终端、前端系统、后端系统;
所述用户终端包括电脑、平板、手机的任意一种或多种设备,不同设备搭载有相同或不同的操作系统,用于向用户提供可编辑界面和人机交互接口;
所述前端系统包括前台服务器,用于支持用户终端,向用户提供所述对战系统中与游戏相关的可编辑界面;
所述后端系统包括后台服务器、存储服务器、目标机和宿主机;
所述后台服务器用于从所述前台服务器获取用户从所述可编辑界面输入的原始代码,根据原始代码的编程语言类型调用对应的宿主机服务器;所述原始代码使用任意一种或多种编程语言;
所述宿主机包括多台宿主机服务器,用于接收所述用户终端发送的原始代码并进行处理生成对应的目标机器代码;
所述目标机包括多台目标机服务器,不同目标机服务器运行有不同的服务器操作系统;用于接收对应的目标机器代码并产生结果文件,然后将所述结果文件返回至用户终端;
所述前端系统为解耦式前端布局,还包括分别与前台服务器连接的首页展示模块、后台管理展示模块和游戏画面显示模块;
首页展示模块:用于创建前端系统中关于首页的所有视图对象和控制对象,并通过分页插件显示于用户终端的可编辑界面;
后台管理展示模块:用于创建前端系统中关于后台管理的所有视图对象和控制对象,并通过分页插件显示于用户终端的可编辑界面;
游戏画面显示模块:用于创建前端系统中关于游戏的所有视图对象和控制对象,并通过分页插件显示于用户终端的可编辑界面;
所述后端系统还包括分别与后台服务器连接的:
A.用户管理模块,用于处理用户的相关业务,包括用户登录注册子模块、用户列表子模块和用户个人详情子模块:
A1.用户登录注册子模块,用于接收用户进行登录注册的第一请求,然后通过存储服务器对进行登录注册请求的用户的密码进行加密处理后存储于数据库,并对发出所述第一请求的用户的邮箱进行校验认证;
A2.用户列表子模块和用户个人详情子模块,用户列表子模块用于从数据库读取用户表,通过前端系统显示于用户终端的可编辑界面;用户个人详情子模块用于根据用户进行登录注册的第一请求中匹配用户ID,并根据用户ID查询数据库,返回用户的个人详情数据,通过前端系统显示于用户终端的可编辑界面;
B.游戏管理模块,用于处理游戏相关业务,包括游戏列表子表模块、游戏发布子模块、游戏状态管理子模块:
B1.游戏列表子模块,用于从数据库读取游戏表,通过前端系统显示于用户终端的可编辑界面;
B2.游戏发布子模块,用于接收前端系统发送的游戏发布信息,然后将所述游戏相关信息写入数据库,通过前端系统显示于用户终端的可编辑界面;
B3.游戏状态管理子模块,用于前端系统发送的游戏状态信息,然后将所述游戏状态信息写入数据库,通过前端系统显示于用户终端的可编辑界面;
C.游戏记录模块,用于接收前端系统发送的游戏对战信息,然后将所述游戏对战信息写入数据库;
D.对战逻辑模块,用于接收用户进行游戏选择的第二请求以及进行对战用户选择的第三请求,处理用户从所述可编辑界面输入的原始代码,并传输至后台文件处理模块对原始代码进行编译处理;
E.后台文件处理模块,用于根据原始代码的编程语言类型调用对应的编译器,对原始代码进行编译处理并产生结果文件,通过前端系统显示于用户终端的可编辑界面。
2.根据权利要求1所述的多语言跨平台的在线代码对战系统,其特征在于,所述宿主机服务器部署有相同或不同的编译器,用于对对应编程语言类型的原始代码进行编译处理并生成对应的目标机器代码。
3.根据权利要求1所述的多语言跨平台的在线代码对战系统,其特征在于,所述存储服务器包括数据库服务器和文件服务器,所述数据库服务器用于提供保存用户数据、游戏数据以及编程语言类型的相关数据的数据库,所述文件服务器用于保存原始代码文件。
4.根据权利要求3所述的多语言跨平台的在线代码对战系统,其特征在于,所述数据库服务器包括的表格有:
a.用户表,存储用户个人信息数据,包括:用户ID、用户个人姓名、用户创建时间、用户头像路径、用户积分;
b.游戏表,存储所述在线代码对战系统中每个游戏的相关信息数据,包括:游戏ID、游戏名称、支持代码的编程语言类型、游戏运行的次数、时间和游戏简介;
c.游戏记录表,记录每次运行游戏的信息数据,包括:游戏对战双方的用户ID、游戏结果记录、游戏结果文件、游戏运行时间;
d.代码的编程语言种类表,记录编程语言的类型和名称;
e.权限表,记录用户ID以及用户ID所对应的权限。
5.根据权利要求1~4任一项所述的在线代码对战系统,其特征在于,所述设备搭载的操作系统为windows、Linux、Mac OS中的任意一种操作系统。
6.根据权利要求5所述的在线代码对战系统,其特征在于,所述目标机服务器运行的服务器操作系统包括Windows、Linux系统。
7.一种基于权利要求1、2、3、4、6任一项所述的多语言跨平台的在线代码对战系统的多语言跨平台的在线代码对战方法,其特征在于,包括以下步骤:
S1.后端系统通过前端系统接收用户在用户终端输入的进行登录注册的第一请求,然后对进行登录注册请求的用户的密码进行加密处理后并存储,对用户的邮箱进行校验认证;
S2.后端系统读取用户表和游戏表,并通过前端系统显示于用户终端的可编辑界面;
S3.后端系统通过前端系统接收用户在用户终端输入的进行游戏选择的第二请求以及进行对战用户选择的第三请求;然后将所述游戏和所述对战用户的相关数据通过前端系统显示于用户终端的可编辑界面;
S4.后端系统通过前端系统获取用户输入的原始代码,并根据所述第二请求中的游戏名称创建文件夹,复制所述原始代码至所述文件夹形成源码文件;然后根据现有的文件系统结构和组织参数调用并写入已经预设的批处理文件;
S5.在所述批处理文件中,调用与原始代码的编程语言类型相对应的编译器对所述源码文件进行编译处理,生成对应的目标机器代码;若目标机器代码出错,则返回步骤S4,否则进行下一步;
S6.所述目标机器代码返回至目标机运行,产生结果文件;将所述结果文件中的临时文件删除后进行存储;
S7.根据所述结果文件读取结果字符,并添加为游戏记录;
S8.所述结果文件通过前端系统显示于用户终端的可编辑界面。
8.根据权利要求7所述的多语言跨平台的在线代码对战方法,其特征在于,步骤S5中所述的在所述批处理文件中,调用与原始代码的编程语言类型相对应的编译器对所述源码文件进行编译处理,生成对应的目标机器代码的具体步骤包括:扫描原始代码;对原始代码进行语法分析,得到原始代码的结构元素及其关系;对原始代码进行语义分析,确定原始代码运作的过程和动作;优化原始代码,生成目标机器代码。
CN201910511654.3A 2019-06-13 2019-06-13 一种多语言跨平台的在线代码对战系统和方法 Expired - Fee Related CN110379257B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910511654.3A CN110379257B (zh) 2019-06-13 2019-06-13 一种多语言跨平台的在线代码对战系统和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910511654.3A CN110379257B (zh) 2019-06-13 2019-06-13 一种多语言跨平台的在线代码对战系统和方法

Publications (2)

Publication Number Publication Date
CN110379257A CN110379257A (zh) 2019-10-25
CN110379257B true CN110379257B (zh) 2021-03-30

Family

ID=68250244

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910511654.3A Expired - Fee Related CN110379257B (zh) 2019-06-13 2019-06-13 一种多语言跨平台的在线代码对战系统和方法

Country Status (1)

Country Link
CN (1) CN110379257B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111773733B (zh) * 2020-07-06 2024-04-19 北京思明启创科技有限公司 基于Arcade平台的编程方法、设备及存储介质
CN112333252B (zh) * 2020-10-27 2022-11-11 宁波大学 一种在线物联网实验操作系统
CN113676270A (zh) * 2021-08-25 2021-11-19 深圳市广和通无线股份有限公司 支持多芯片平台的5g无线模块信号噪声检测方法及装置
CN114756208A (zh) * 2022-04-14 2022-07-15 重庆亿启编科技有限公司 软件编程比赛系统

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002091284A (ja) * 2000-09-12 2002-03-27 Wareport Corp 個別学習管理システム
CN1601510A (zh) * 2003-03-06 2005-03-30 微软公司 分布式计算系统的架构和分布式应用程序的自动设计,部署及管理
CN101408913A (zh) * 2007-07-30 2009-04-15 Jg游戏控股有限公司 多个争夺互联网网站的在线参与者间的交互式对战视频游戏
US8023636B2 (en) * 2002-02-21 2011-09-20 Sivox Partners, Llc Interactive dialog-based training method
CN103220364A (zh) * 2013-04-27 2013-07-24 清华大学 一种基于云的系统管理训练平台架构
CN106776953A (zh) * 2016-12-04 2017-05-31 国云科技股份有限公司 一种在线文件云存储系统的实现方法
CN106960141A (zh) * 2016-01-08 2017-07-18 阿里巴巴集团控股有限公司 虚拟机指令的编码、解码方法及装置、虚拟机保护系统
CN107526806A (zh) * 2017-08-22 2017-12-29 北京奇虎科技有限公司 数据的转换方法及装置
CN109784008A (zh) * 2017-11-14 2019-05-21 卓望数码技术(深圳)有限公司 一种用于移动代码的结构扁平方法和系统

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002091284A (ja) * 2000-09-12 2002-03-27 Wareport Corp 個別学習管理システム
US8023636B2 (en) * 2002-02-21 2011-09-20 Sivox Partners, Llc Interactive dialog-based training method
CN1601510A (zh) * 2003-03-06 2005-03-30 微软公司 分布式计算系统的架构和分布式应用程序的自动设计,部署及管理
CN101408913A (zh) * 2007-07-30 2009-04-15 Jg游戏控股有限公司 多个争夺互联网网站的在线参与者间的交互式对战视频游戏
CN103220364A (zh) * 2013-04-27 2013-07-24 清华大学 一种基于云的系统管理训练平台架构
CN106960141A (zh) * 2016-01-08 2017-07-18 阿里巴巴集团控股有限公司 虚拟机指令的编码、解码方法及装置、虚拟机保护系统
CN106776953A (zh) * 2016-12-04 2017-05-31 国云科技股份有限公司 一种在线文件云存储系统的实现方法
CN107526806A (zh) * 2017-08-22 2017-12-29 北京奇虎科技有限公司 数据的转换方法及装置
CN109784008A (zh) * 2017-11-14 2019-05-21 卓望数码技术(深圳)有限公司 一种用于移动代码的结构扁平方法和系统

Also Published As

Publication number Publication date
CN110379257A (zh) 2019-10-25

Similar Documents

Publication Publication Date Title
CN110379257B (zh) 一种多语言跨平台的在线代码对战系统和方法
CN102426607B (zh) 可扩展搜索项建议引擎
CN103781522B (zh) 用于生成并加入经验共享的方法和系统
CN105787001A (zh) 跨语言信息检索
US20170315790A1 (en) Interactive multimodal display platform
RU2008134526A (ru) Система и способ для осуществления управления удаленными компьютерами
CN113761514B (zh) 一种云桌面多因子安全认证方法及系统
KR20150014847A (ko) 의논 지원 프로그램, 의논 지원 장치 및 의논 지원 방법
Morgado et al. Integration scenarios of virtual worlds in learning management systems using the MULTIS approach
CN113791750A (zh) 一种虚拟内容显示方法、装置和计算机可读存储介质
CN112016077B (zh) 一种基于滑动轨迹模拟的页面信息获取方法、装置和电子设备
CN112861472A (zh) 共享文档的展示方法、装置、设备及计算机可读存储介质
CN106406860A (zh) 一种基于b/s架构的虚拟维修训练仿真平台及其应用
US20220230558A1 (en) Coding Education System
CN108021359B (zh) 提供应用服务的平台及方法、应用的提供方法及获取方法
Roy Preserving interactivity: towards next generation digital preservation philosophy and systems
Wilson Building Node Applications with MongoDB and Backbone: Rapid Prototyping and Scalable Deployment
CN115687816A (zh) 资源处理方法及装置
Hakkun et al. Online Visual Novel Game Framework
CN111326035B (zh) 任务同步方法、远程教学系统
Sanderson Programming Google App Engine with Java: Build & Run Scalable Java Applications on Google's Infrastructure
JP2020160382A (ja) 学習支援システム、学習支援方法、及び学習支援プログラム
Morgado et al. Integrating virtual worlds with Learning Management Systems: the MULTIS approach
KR102575679B1 (ko) 클라우드 기반의 가상 컴퓨팅 작업 환경을 제공하는 클라우드 서비스를 운영하기 위한 클라우드 서비스 운영 서버
Li et al. Having Difficulty Understanding Manuals? Automatically Converting User Manuals into Instructional Videos

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20210330