一种教育操作系统上的编程作品的同步方法及系统与流程

文档序号:16734926发布日期:2019-01-28 12:33阅读:211来源:国知局
技术简介:
本发明针对多设备同步编程作品时出现的版本冲突问题,提出通过为本地与云端文件生成唯一标识,实现跨设备版本合并与同步。当设备修改文件后,系统自动保存本地标识并上传至云端,云端根据新标识覆盖旧版本,确保不同设备修改的独立部分可合并存储,避免文件损坏或丢失。该方法通过标识对应机制,解决了多设备协同开发时的版本管理难题。
关键词:版本冲突解决,多设备同步

本发明涉及教育操作系统技术领域,尤其涉及一种教育操作系统上的编程作品的同步方法及系统。



背景技术:

随着科技生活移动化,人们的工作生活越来越依赖于手机、平板等移动化电子产品,程序编写也逐渐开始移动化趋势。而为了促进青少年的教育,教育操作系统也逐渐进入人们的视野。而基于教育操作系统的编写程序作品,有助力于提高青少年的动手、动脑能力。

因为编写的程序文件结构普遍比较复杂,存在复杂的版本管理问题。如图1所示,假设在设备a本地编写程序,程序版本1.0,1.0程序版本上传到云端;在设备b拉取云端程序1.0;在设备a继续编写云端程序版本1.11;在设备b更改文件,设为版本1.12;此时如果要同步到云端,由于版本1.11和版本1.12存在矛盾,版本1.11和版本1.12可能只是各自修改了程序一部分,并不是替代关系。因此现有技术中的不同设备间编写程序作品后与云端同步时,文件版本会出现冲突,同步文件保存不完整。

因此,现有技术还有待于改进和发展。



技术实现要素:

鉴于上述现有技术的不足,本发明的目的在于提供一种教育操作系统上的编程作品的同步方法及系统,旨在解决现有技术中的不同设备编写的程序作品与云端同步时会出现版本冲突,文件保存错误的问题。

本发明的技术方案如下:

一种教育操作系统上的编程作品的同步方法,所述方法包括:

检测第一终端的编程作品生成时,获取编程作品的第一本地标识;

检测到编程作品上传至云端服务器时,获取云端服务器上的编程作品对应的第一云端标识;

当检测到云端服务器的编程作品下载到第二终端时,生成编程作品在第二终端的第二本地标识;

当检测到第二终端的编程作品上传至云端服务器时,获取云端服务器上的编程作品对应的第二云端标识。

可选地,所述检测第一终端的编程作品生成时,获取编程作品的第一本地标识前,包括:

检测到第一终端新建编程作品的程序文件,新建编程作品的第一本地标识;

接收用户指令对程序文件进行编写,第一终端每隔一预定时间自动保存程序文件至第一终端;

当检测到用户退出程序编写后,将编写好的程序作品自动保存第一终端。

可选地,所述检测到编程作品上传至云端服务器时,获取云端服务器上的编程作品对应的第一云端标识前,包括:

判断第一终端是否有网络连接;

若第一终端有网络连接,则将编写好的程序作品备份至云端服务器,若备份成功,则判定第一程序作品上传至云端服务器;

若第一终端无网络连接,则提示云端服务器备份失败,并在第一终端上保存备份失败信息。

可选地,所述检测到编程作品上传至云端服务器时,获取云端服务器上的编程作品对应的第一云端标识,还包括:

若编写好的程序作品备份至云端服务器失败时,则提示云端服务器备份失败,并在第一终端上保存备份失败信息。

可选地,所述当检测到云端服务器的编程作品下载到第二终端时,生成编程作品在第二终端的第二本地标识,包括:

当检测到第二终端下载云端服务器的编程作品时,在第二终端生成编程作品的第二本地标识;

获取用户指令在第二终端上的编程作品进行修改,并在第二终端上保存修改后的编程作品。

可选地,所述当检测到第二终端的编程作品上传至云端服务器时,获取云端服务器上的编程作品对应的第二云端标识,包括:

当检测到第二终端将修改后的编程作品上传至云端服务器时,判断上传是否成功;

若上传成功,则获取云端服务器根据修改后的编程作品生成的第二云端标识;

若上传失败,则提示云端服务器备份失败,并在第二终端上保存备份失败信息。

可选地,所述当检测到编程作品上传至云端服务器时,获取云端服务器上的编程作品对应的第一云端标识,还包括:

当检测到第一终端对编程作品进行修改后,且将修改后编程作品上传至云端服务器时,获取第一云端标识对应的编程作品,将修改后编程作品对第一云端标识对应的编程进行覆盖。

可选地,所述第一本地标识与第一云端标识唯一对应,所述第二本地标识与第二云端标识唯一对应。

本发明又一实施例还提供了一种教育操作系统上的编程作品的同步系统,所述系统包括至少一个处理器;以及,

与所述至少一个处理器通信连接的存储器;其中,

所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-8任一项所述的教育操作系统上的编程作品的同步方法。

本发明的另一实施例还提供了一种非易失性计算机可读存储介质,其特征在于,所述非易失性计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行时,可使得所述一个或多个处理器执行上述的教育操作系统上的编程作品的同步方法。

有益效果:本发明公开了一种教育操作系统上的编程作品的同步方法及系统,本发明实施例可可实现程序作品编写不再受限于设备平台,无论在哪个平台编写,只要使用相同的账号,可以轻松将本地的程序存储在云端,实现通过云端作品在多设备间共享编程文件,简单有效地解决多设备间的版本管理问题,解决不同设备间的版本冲突,可以实现不同设备间各自独立修改程序一部分的版本合并问题。

附图说明

下面将结合附图及实施例对本发明作进一步说明,附图中:

图1为现有技术中不同设备间的程序文件同步到云端的示意图;

图2为本发明一种教育操作系统上的编程作品的同步方法较佳实施例的流程图;

图3为本发明一种教育操作系统上的编程作品的同步系统较佳实施例的硬件结构示意图。

具体实施方式

为使本发明的目的、技术方案及效果更加清楚、明确,以下对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。以下结合附图对本发明实施例进行介绍。

请参阅图2,图2为本发明一种教育操作系统上的编程作品的同步方法较佳实施例的流程图。如图2所示,其包括步骤:

步骤s100、检测第一终端的编程作品生成时,获取编程作品的第一本地标识;

步骤s200、检测到编程作品上传至云端服务器时,获取云端服务器上的编程作品对应的第一云端标识;

步骤s300、当检测到云端服务器的编程作品下载到第二终端时,生成编程作品在第二终端的第二本地标识;

步骤s400、当检测到第二终端的编程作品上传至云端服务器时,获取云端服务器上的编程作品对应的第二云端标识。

具体地,步骤s100前包括:

检测到第一终端新建编程作品的程序文件,新建编程作品的第一本地标识;

接收用户指令对程序文件进行编写,第一终端每隔一预定时间自动保存程序文件至第一终端;

当检测到用户退出程序编写后,将编写好的程序作品自动保存第一终端。

具体实施时,本发明实施例中第一终端和第二终端可能是手机、平板电脑、电脑等可进行程序作品编写的电子设备。第一终端接收用户指令新建程序文件,同时新建第一本地标识,程序文件编写过程中,第一终端每隔一预定时间自动保存程序文件至本地,其中预定时间可由用户自行设置,如设置为1min或2min。当检测到用户退出程序编写时,当前的程序文件视为一个程序作品。程序作品自动保存第一终端本地存储空间中。

步骤s100中检测第一终端的编程作品生成时,获取编程作品的第一本地标识,第一本地标识是当前编写程序的唯一标识。

进一步地,步骤s200前包括:

判断第一终端是否有网络连接;

若第一终端有网络连接,则将编写好的程序作品备份至云端服务器,若备份成功,则判定第一程序作品上传至云端服务器;

若第一终端无网络连接,则提示云端服务器备份失败,并在第一终端上保存备份失败信息。

具体实施时,程序作品在本地存储成功后,判断第一终端是否有网络连接,其中网络连接可以是无线网络连接,或是蜂窝移动网络连接。当第一终端有网络连接时,则将编写好的程序作品备份到云端服务器,若备份成功,则判定第一程序作品已经成功上传至云端服务器。

若第一终端无网络连接,判定备份到云端失败,作为本地作品,下次在第一终端编写作品后,自动保存到第一终端本地存储空间。

具体地,检测到编程作品上传至云端服务器时,获取云端服务器上的编程作品对应的第一云端标识,还包括:

若编写好的程序作品备份至云端服务器失败时,则提示云端服务器备份失败,并在第一终端上保存备份失败信息。

具体实施时,当将编写好的程序作品上传至云端服务器时,若备份失败,则判定备份到云端失败,作为本地作品,下次在第一终端编写作品后,自动保存到第一终端本地存储空间。

步骤s200中的第一云端标识与第一终端中的第一本地标识一一对应。

进一步地,步骤s200后还包括:当检测到第一终端对编程作品进行修改后,且将修改后编程作品上传至云端服务器时,获取第一云端标识对应的编程作品,将修改后编程作品对第一云端标识对应的编程进行覆盖。

具体实施时,同一设备更新本地程序文件,通过唯一标识,覆盖更新唯一对应的云端标识下对应的程序作品。当第一终端再次编辑程序作品时,获取修改后的编程作品,将修改后的编程作品上传至第一云端标识对应的编程作品,覆盖第一云端标识下对应的程序作品。

步骤s300包括:当检测到第二终端下载云端服务器的编程作品时,在第二终端生成编程作品的第二本地标识;

获取用户指令在第二终端上的编程作品进行修改,并在第二终端上保存修改后的编程作品。

具体实施时,从云端拉取程序文件到本地,生成新的本地标识,这个标识不再与之前的云端程序对应,而是在下一次触发自动备份云端的时候,生成新的云端唯一标识与之对应,以后每次的更新覆盖,都覆盖新的云端作品,避免产生版本不兼容的冲突。本地和云端作品删除互不冲突,任何一方删除,在产生新的对应关系时,将生成新的对应标识来替代之前被删除的程序。

进一步地,步骤s400包括:

当检测到第二终端将修改后的编程作品上传至云端服务器时,判断上传是否成功;

若上传成功,则获取云端服务器根据修改后的编程作品生成的第二云端标识;

若上传失败,则提示云端服务器备份失败,并在第二终端上保存备份失败信息。

具体实施时,当第二终端上传修改后编程作品至云端服务器时,若是上传成功,则云端服务器存储修改后的编程作品,生成与第二本地标识对应的第二云端标识,若上传失败,则提示云端服务器备份失败,并将修改后的编程保存到第二终端本地,并在下一次用户在第二本地上修改程序作品时自动保存到第二终端本地。

本发明另一实施例提供一种教育操作系统上的编程作品的同步系统,如图3所示,系统10包括:

一个或多个处理器110以及存储器120,图3中以一个处理器110为例进行介绍,处理器110和存储器120可以通过总线或者其他方式连接,图3中以通过总线连接为例。

处理器110用于完成系统10的各种控制逻辑,其可以为通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)、单片机、arm(acornriscmachine)或其它可编程逻辑器件、分立门或晶体管逻辑、分立的硬件组件或者这些部件的任何组合。还有,处理器110还可以是任何传统处理器、微处理器或状态机。处理器110也可以被实现为计算设备的组合,例如,dsp和微处理器的组合、多个微处理器、一个或多个微处理器结合dsp核、或任何其它这种配置。

存储器120作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本发明实施例中的教育操作系统上的编程作品的同步方法对应的程序指令。处理器110通过运行存储在存储器120中的非易失性软件程序、指令以及单元,从而执行系统10的各种功能应用以及数据处理,即实现上述方法实施例中的教育操作系统上的编程作品的同步方法。

存储器120可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据系统10使用所创建的数据等。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器120可选包括相对于处理器110远程设置的存储器,这些远程存储器可以通过网络连接至系统10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

一个或者多个单元存储在存储器120中,当被一个或者多个处理器110执行时,执行上述任意方法实施例中的教育操作系统上的编程作品的同步方法,例如,执行以上描述的图2中的方法步骤s100至步骤s400。

上述系统10可执行本发明实施例所提供的教育操作系统上的编程作品的同步方法,具备执行方法相应的功能模块和有益效果。未在系统10实施例中详尽描述的技术细节,可参见本发明实施例所提供的教育操作系统上的编程作品的同步方法。

本发明实施例提供了一种非易失性计算机可读存储介质,计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行,例如,执行以上描述的图2中的方法步骤s100至步骤s400。

本发明的另一种实施例提供了一种计算机程序产品,计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,计算机程序包括程序指令,当程序指令被处理器执行时,使所述处理器执行上述方法实施例的教育操作系统上的编程作品的同步方法。例如,执行以上描述的图2中的方法步骤s100至步骤s400。

以上所描述的系统实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际需要选择其中的部分或者全部模块来实现本实施例方案的目的。

通过以上的实施例的描述,本领域的技术人员可以清楚地了解到各实施例可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件实现。基于这样的理解,上述技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存在于计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分的方法。

应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。

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