数据处理方法、装置、设备及存储介质与流程

文档序号:31054764发布日期:2022-08-06 12:00阅读:9954来源:国知局
数据处理方法、装置、设备及存储介质与流程

1.本公开涉及数据处理技术领域,尤其涉及云计算领域。


背景技术:

2.现有针对应用程序的需求配置,均是在终端侧实现的,即在终端侧完成数据请求、数据解析以及数据持久化处理等,且该过程均是开发人员通过代码编写而实现的,人力成本较高。


技术实现要素:

3.本公开提供了一种数据处理方法、装置、设备及存储介质。
4.根据本公开的一方面,提供了一种数据处理方法,包括:
5.服务器接收配置请求信息,所述配置请求信息包含有目标应用程序的第一程序版本信息;
6.所述服务器获取与所述目标应用程序的第一程序版本信息相关联的目标配置数据;
7.所述服务器在与所述目标应用程序相匹配的目标开发环境中,基于所述目标配置数据生成针对所述目标应用程序的目标代码产物。
8.根据本公开的另一方面,提供了一种数据处理装置,包括:
9.信息接收单元,用于接收配置请求信息,所述配置请求信息包含有目标应用程序的第一程序版本信息;
10.数据获取单元,用于获取与所述目标应用程序的第一程序版本信息相关联的目标配置数据;
11.代码生成单元,用于在与所述目标应用程序相匹配的目标开发环境中,基于所述目标配置数据生成针对所述目标应用程序的目标代码产物。
12.根据本公开的再一方面,提供了一种电子设备,包括:
13.至少一个处理器;以及
14.与所述至少一个处理器通信连接的存储器;其中,
15.所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行以上所述的方法。
16.根据本公开的再一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行以上所述的方法。
17.根据本公开的再一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现以上所述的方法。
18.这样,本公开方案能够在服务器侧实现代码的自动生成,降低了人力成本,提高了开发效率;同时,有效确保了代码风格的统一。
19.应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特
征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
20.附图用于更好地理解本方案,不构成对本公开的限定。其中:
21.图1是配置数据的开发需求示意图;
22.图2是现有终端侧配置数据的开发流程示意图;
23.图3是根据本公开实施例数据处理方法的实现流程示意图一;
24.图4是根据本公开实施例数据处理方法的实现流程示意图二;
25.图5是根据本公开实施例数据处理方法在一具体实例中的架构示意图;
26.图6是根据本公开实施例数据处理方法在一具体实例中的流程示意图;
27.图7是根据本公开实施例数据处理方法在一具体实例中的流程交互图;
28.图8是根据本公开实施例数据处理装置的结构示意图一;
29.图9是根据本公开实施例数据处理装置的结构示意图二;
30.图10是用来实现本公开实施例的数据处理方法的电子设备的框图。
具体实施方式
31.以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
32.为了更清楚的介绍本公开方案,先对以下名词术语进行简单介绍,具体包括:
33.配置(configuration)指一处理流程,该流程在软件开发或系统实现中,将一些可能变化的数据封装成结构实体,(该结构实体)不依赖软件更新或发布而实现功能调整或控制行为,配置的主要特点是可以直接更新数据而不依赖于重新发布程序。配置流程所封装的数据,可称为配置数据。
34.在软件架构中,客户端软件会需要各种类型的配置数据。一般情况下,这些配置数据处理后存储在客户端本地,例如,数据库或可扩展标记语言(xml)文件中。在一般运营型的项目中,配置要求不依赖于新版本客户端的发布而去维护和更新,此时,会将配置相关信息存储在服务器上,由相应的人员去维护进行更新。
35.实体指客观存在并可相互区别的对象或事物;就数据库而言,实体往往指某类事物的集合。就本公开方案而言,实体指的是指数据在业务中所属的类别。
36.序列化(serialization)是将对象(或称对象数据)的状态信息转换为可以存储或传输的形式的过程。在序列化期间,对象将其当前状态写入到临时或持久性存储区。通过从存储区中读取或反序列化对象的状态信息,即可重新创建该对象。
37.反序列化是序列化的逆过程,指读取存储区的数据,重新创建对象的过程。
38.持久化指将程序数据在持久状态和瞬时状态间转换的机制。通俗的讲,指瞬时数据(比如内存中的数据,是不能永久保存的)持久化(也即转换)为持久数据(比如持久化至数据库中,能够长久保存)的过程。
39.通常,对于运营型的配置类需求,开发人员需要在可视化配置平台进行数据配置,
比如,开发人员基于待配置数据的数据格式进行代码开发,如图1所示,以完成实体构建、序列化处理、持久化处理、反序列化处理等;举例来说,如图2所示,终端需要设置请求模块、解析模块和持久化模块,并通过上述三个模块来完成代码开发;这里,所述请求模块用于向服务器发起请求,所述服务器响应该请求,返回请求所指示的当前版本信息对应的配置数据与历史配置数据之间的差异数据,所述终端基于解析模块对服务器返回的数据进行解析,并人工编写代码来完成实体构造,进而在利用持久化模块完成序列化处理、持久化处理等。换言之,上述请求模块、解析模块和持久化模块均需开发人员进行代码编写,开发成本较高,而且,由于每次配置类均是人为编写代码,所以,无法保证代码风格统一。
40.基于此,为了提高配置类需求的效率,并且提升代码的可靠性,代码规范的统一性,本公开方案提出了一种能够在云端自动化实现的数据处理方案,能够适用于所有的动态化需求较高的需求,同时,不限于应用程序的开发环境,比如安卓(android)系统、ios(iphone operating system)系统等;也不限使用该应用程序的终端,比如,个人电脑或智能电视等。
41.具体地,本公开方案提供了一种数据处理方法,如图3所示,包括:
42.步骤s301:服务器接收配置请求信息,所述配置请求信息包含有目标应用程序的第一程序版本信息。
43.本公开方案所述的目标应用程序可以指为完成某项功能的计算机程序,可以和用户进行交互,具有可视的用户界面等;实际应用中,本公开方案所述的目标应用程序可以是应用软件中的一个或多个功能组件所对应的计算机程序,也可以是实现该应用软件的所有计算机程序,本公开方案对此不作限制。
44.步骤s302:所述服务器获取与所述目标应用程序的第一程序版本信息相关联的目标配置数据。
45.可以理解的是,本公开方案所述的目标配置数据即为以上所述的配置流程所封装的数据,本公开方案对目标配置数据的数据类型不作限制。
46.步骤s303:所述服务器在与所述目标应用程序相匹配的目标开发环境中,基于所述目标配置数据生成针对所述目标应用程序的目标代码产物。
47.可以理解的是,本公开方案对具体服务器的类型不作限制,比如,本公开方案所述的服务器可以具体为云端服务器等。同理,本公开方案对目标应用程序也不作具体限制。
48.在一具体示例中,所述配置请求信息为终端侧所生成的,比如,该终端侧需要对目标应用程序进行配置处理。此时,该终端可以向服务器侧发起配置请求信息,并由所述服务器侧自动生成当前配置需求所需的代码(即目标代码产物)。
49.这样,服务器侧实现了代码的自动生成,降低了人力成本,提高了开发效率;而且,由于代码为自动生成的,无需人工介入,所以,能够有效确保代码风格的统一,确保代码的规范性,同时为提升代码鲁棒性、容错性奠定了基础。
50.在本公开方案的一具体示例中,所述配置请求信息还包含有所述目标应用程序的类型特征;所述方法还包括:
51.创建与所述目标应用程序的类型特征相匹配的所述目标开发环境。
52.也就是说,在一具体示例中,如图4所示,所述方法包括:
53.步骤s401:服务器接收配置请求信息,所述配置请求信息包含有目标应用程序的
第一程序版本信息。
54.步骤s402:所述服务器获取与所述目标应用程序的第一程序版本信息相关联的目标配置数据。
55.步骤s403:所述服务器创建与所述目标应用程序的类型特征相匹配的所述目标开发环境。
56.举例来说,所述类型特征可以具体为目标应用程序的类型,目标应用程序所对应的产品线等,比如,类型特征能够指示该目标应用程序为支持安卓系统的即时通讯软件等。
57.可以理解的是,步骤s402和步骤s403的执行顺序可以调换,本公开方案对此不作限制。
58.步骤s404:所述服务器在与所述目标应用程序相匹配的目标开发环境中,基于所述目标配置数据生成针对所述目标应用程序的目标代码产物。
59.这样,本公开方案能够通过目标应用程序的类型特征来确定目标应用程序的目标开发环境,也就是说,本公开方案充分考虑了应用程序所需的开发环境,提升了自动生成的目标代码产物的实用性。进而为进一步降低人力成本、提高开发效率、提升自动生成的代码的容错性和鲁棒性奠定了基础。
60.在本公开方案的一具体示例中,可以采用如下方式来得到目标代码产物,具体地,以上所述的在与所述目标应用程序相匹配的目标开发环境中,基于所述目标配置数据生成针对所述目标应用程序的目标代码产物,具体包括:
61.在与所述目标应用程序相匹配的目标开发环境中,基于所述目标配置数据生成针对所述目标应用程序的代码数据;对生成的所述代码数据进行预设处理,得到目标代码产物。也就是说,所述目标代码产物,是对生成的代码数据进行处理后的数据。
62.实际应用中,还可以预先设置预设代码模板,进而在与所述目标应用程序相匹配的目标开发环境中,使用预设代码模板,并基于所述目标配置数据生成针对所述目标应用程序的代码数据,进而再对生成的所述代码数据进行压缩并打包处理,得到目标代码产物。
63.这样,提供了一种得到目标代码产物的具体方式,且该方式简单可行,充分兼容了现有代码产物的生成方式,为将本公开方案进行大规模工程化应用奠定了基础。
64.而且,由于在服务器实现了代码的自动生成,所以,降低了人力成本,提高了开发效率;而且,由于代码为自动生成的,无需人工介入,所以,能够有效确保代码风格的统一,确保代码的规范性,同时为提升代码鲁棒性、容错性奠定了基础。
65.在本公开方案的一具体示例中,在得到目标代码产物后,还基于预设命名规则,对所述目标代码产物进行重命名,以使版本信息与产物一一对应,为后续进行开发迭代,或者错误定位等提供了支持。具体地,生成所述目标代码产物的版本信息;比如,基于预设命名规则,生成目标代码产物的版本信息,将所述目标代码产物的版本信息作为所述目标应用程序的第二程序版本信息。也就是说,生成的该目标代码产物的版本信息即为目标应用程序的最新版本信息。
66.这样,规范了开发迭代的信息维护流程,同时,也为后续开发提供了便利,进而为提升开发效率奠定了基础。
67.在本公开方案的一具体示例中,在确定目标应用程序的最新程序版本信息(也即第二程序版本信息)之后,所述服务器发送所述目标应用程序的第二程序版本信息。比如,
所述服务器将所述目标应用程序的第二程序版本信息发送至发起该配置请求信息的终端,如此,便于终端基于该目标应用程序的第二程序版本信息进行后续开发处理。
68.这样,本公开方案的整个自动代码生成的过程,无需开发人员在终端进行代码编写,即可得到目标代码产物,显然,相比于现有开发人员在终端侧进行代码开发的方式,本公开方案有效降低了人力成本,提升了开发效率。
69.在本公开方案的一具体示例中,所述服务器在确定存在预设异常信息的情况下,生成提示信息;这里,所述预设异常信息至少表征所述目标代码产物所使用的配置数据的数据类型与所述目标配置数据的数据类型不匹配。比如,为了进一步提升智能化,所述服务器还可以对目标代码产物进行分析,比如,设置定时任务,在定时任务启动时,将生成的目标代码产物中的配置数据的数据类型,与获取的目标配置数据的数据类型进行比较,判断两者的数据类型是否一致;若一致,认为生成的目标代码产物正常;否则,认为生成的目标代码产物存在错误,此时,服务器生生成提示信息,并通过邮件方式发送该提示信息,以提醒相应开发人员。
70.这里,所述提示信息可以具体为预设提示内容,或者,包括目标代码产物所使用的配置数据的数据类型与所述目标配置数据的数据类型的差异信息等,本公开方案对此不作限制,可以基于实际需求而设置。
71.这样,在无需测试人员参与的情况下,即可实现自动化测试,保证了目标代码产物的可靠性,进一步为提升开发效率奠定了基础。
72.这样,本公开方案能够在服务器侧实现代码的自动生成,降低了人力成本,提高了开发效率;而且,由于代码为自动生成的,无需人工介入,所以,能够有效确保代码风格的统一,确保代码的规范性,同时为提升代码鲁棒性、容错性奠定了基础。
73.以下结合图5所示的全景架构图对本公开方案做进一步详细说明,如图5所示,本公开方案涉及到数据仓库侧、配置服务侧以及终端侧;其中,所述数据仓库侧和配置服务侧均可以在云端服务器实现;可以理解的是,所述数据仓库侧和配置服务侧可以位于相同的云端服务器,也可以位于不同的云端服务器,本公开方案对此不作限制。
74.所述终端内集成适配层,该适配层中设置有预设脚本,通过预设脚本能够实现请求标识(id)构造,文件操作,配置请求和产物拉取等处理。而且,所述终端的开发环境,可以为安卓(android)系统或ios系统等;或者,所述终端可以为移动终端、也可以为个人电脑(pc)或智能电视(tv)等。具体地,在需要运行配置类需要时,只需触发该预设脚本,即会自动执行如下步骤:读取所需处理的目标应用程序的当前程序版本信息(也即第一程序版本信息),以及终端的类型特征,根据所述终端的网际互连协议(internet protocol,ip)地址和当前时间戳构造请求标识(id),并生成配置请求信息,发送至配置服务侧,这里,所述配置请求信息中包含有目标应用程序的当前程序版本信息。
75.相应地,所述配置服务侧除了具备基础能力(比如日志、自动化测试、消息同时、持久化处理)后,还能够进行模板管理(比如管理预设代码模板)、代码生成、产物构建、产物分析以及流程控制等;具体地,所述配置服务侧在接收到配置请求信息后,基于目标应用程序的类型特征(比如该目标应用程序所对应的产品线等,举例来说,基于类型特征,即可确定目标应用程序为支持安卓系统的及时通信软件等),获取与目标应用程序的类型特征和第一程序版本信息均匹配的全量配置数据(也即目标配置数据),以及确定与所述目标应用程
序的类型特征相匹配的目标开发环境;在所述目标开发环境中,基于所述全量配置数据自动生成代码,并压缩和打包所生成的所有代码,得到目标代码产物;同时,基于命名规则,对所述目标代码产物进行重命名,得到该目标代码产物的最新程序版本信息(也即第二程序版本信息),并将该目标代码产物发送至配置服务侧中的maven(麦文)仓库(图5中未示出)。所述配置服务向适配层发送目标代码产物的程序版本信息(也即第二程序版本信息)
76.这里,可以理解的是,所述配置服务设置有预设代码模板,如此,基于该预设代码模板即可自动生成代码。
77.相应地,在配置服务侧自动化生成目标代码产物后,所述适配层获取所述目标代码产物的最新程序版本信息(也即第二程序版本信息),并修改自身的当前程序版本信息(也即第一程序版本信息),比如,将所述第二程序版本信息替换原有的第一程序版本信息,完成版本更新;进一步地,所述适配层还可以通过maven仓库拉取(也即下载)最新程序版本信息所对应的目标代码产物,以便于开发人员进行维护开发。
78.此时,可以理解的是,适配层拉取的目标代码产物为配置服务侧自动生成的,所以,一方面,能够解决开发成本,另一方面,确保了代码风格的统一。
79.可以理解的是,实际应用中,不同程序版本信息,可能对应不同的配置需求,本公开方案对此不作限制。
80.实际应用中,为了进一步提升智能化,所述配置服务还可以对目标代码产物进行分析,比如,设置定时任务,在定时任务启动时,将生成的目标代码产物中的配置数据,与获取的全量配置数据进行比较,判断两者的数据类型是否一致,若一致,认为生成的目标代码产物正常;否则,认为生成的目标代码产物存在错误,此时,调用消息通知功能,发送邮件以提醒相应开发人员。
81.数据仓库侧,可以用于通过可视化配置平台来存储配置过的数据。
82.进一步地,结合附图6和图7对本公开方案的具体交互流程进行详细说明,包括:
83.步骤1:执行脚本;即存在配置需求时,运行预设脚本。
84.步骤2:读取当终端的类型特征和目标应用程序的当前程序版本(也即第一程序版本信息)。
85.步骤3:根据所述终端的ip地址和当前时间戳构造请求id,并生成配置请求信息。
86.步骤4:终端向配置服务发送配置请求信息。
87.这里,步骤1至步骤4,是运行预设脚本后触发的整个流程;实际应用中,该过程大概10秒左右即可完成。
88.步骤5:配置服务侧收到配置请求信息后,解析该配置请求信息,得到该目标应用程序的当前版本信息(也即第一程序版本信息)。
89.实际应用中,配置服务侧还会判断是否同时存在并发请求(也即是否存在多个配置请求信息),如果存在,则进入并发控制流程,比如,配置服务基于预设规则响应各配置请求信息,生成与各配置请求信息相匹配的目标代码产物;若不存在,判断本地是否存在目标应用程序对应的最新版本的代码产物,若存在,直接返回,无需再次自动生成代码。
90.步骤6:配置服务向数据仓库请求获取该目标应用程序的当前版本信息和类型特征所匹配的全量配置数据。
91.步骤7:配置服务接收数据仓库发送的全量配置数据。
92.步骤8:配置服务基于目标应用程序的类型特征,选择开发模板来创建工程(也即创建目标开发环境)。
93.步骤9:配置服务在所述工程下,并基于全量配置数据生成代码。
94.步骤10:配置服务基于所生成的代码,构建代码产物,也即目标代码产物,并按照命名规则,对目标代码产物进行命名,得到该目标代码产物的最新程序版本信息(也即第二程序版本信息),如此,保证唯一性。随后,推送至maven仓库。
95.实际应用中,执行完整个流程后删除工程,释放资源。
96.步骤11:配置服务将目标代码产物的最新程序版本信息发送至终端。
97.步骤12:终端更新目标应用程序的版本信息,比如,将目标代码产物的最新程序版本信息作为所述目标应用程序的最新版本信息,并下载该目标代码产物。
98.实际应用中,配置服务还可以对目标代码产物进行分析,比如分析得到所述目标代码产物,与目标应用程序的上一版本的代码产物之间的差异信息,并发送至终端,如此,便于开发人员进行查看。
99.进一步地,所述配置服务还可以进行自动化测试,比如,读取当前目标代码产物的配置数据的数据类型,将目标代码产物的配置数据的数据类型与目标配置数据的数据类型进行比较,在确定不相同的情况下,生成提示信息,以提示开发人员。
100.这样,对于终端配置类需求而言,本公开方案能够大幅降低开发成本,比如,配置类需求能够从原有0.5天左右降低到几分钟之内。而且,在无需测试人员进行测试的情况下,保证了目标代码产物的可靠性,同时,有效确保代码风格的统一,确保代码的规范性,进而为提升代码鲁棒性、容错性奠定了基础。
101.本公开方案还提供了一种数据处理装置,如图8所示,包括:
102.信息接收单元801,用于接收配置请求信息,所述配置请求信息包含有目标应用程序的第一程序版本信息;
103.数据获取单元802,用于获取与所述目标应用程序的第一程序版本信息相关联的目标配置数据;
104.代码生成单元803,用于在与所述目标应用程序相匹配的目标开发环境中,基于所述目标配置数据生成针对所述目标应用程序的目标代码产物。
105.在本公开方案的一具体示例中,所述配置请求信息还包含有所述目标应用程序的类型特征;
106.所述代码生成单元,还用于创建与所述目标应用程序的类型特征相匹配的所述目标开发环境。
107.在本公开方案的一具体示例中,所述代码生成单元,具体用于在与所述目标应用程序相匹配的目标开发环境中,基于所述目标配置数据生成针对所述目标应用程序的代码数据;对生成的所述代码数据进行预设处理,得到目标代码产物。
108.在本公开方案的一具体示例中,如图9所示,还包括:
109.版本信息处理单元901,用于生成所述目标代码产物的版本信息;将所述目标代码产物的版本信息作为所述目标应用程序的第二程序版本信息。
110.在本公开方案的一具体示例中,如图9所示,还包括:
111.信息发送单元902,用于发送所述目标应用程序的第二程序版本信息。
112.在本公开方案的一具体示例中,如图9所示,还包括:
113.提示信息处理单元903,用于在确定存在预设异常信息的情况下,生成提示信息;
114.其中,所述预设异常信息至少表征所述目标代码产物所使用的配置数据的数据类型与所述目标配置数据的数据类型不匹配。
115.上述装置中各单元的具体功能可参照上述方法描述,这里不再赘述。
116.本公开的技术方案中,所涉及的用户个人信息的获取,存储和应用等,均符合相关法律法规的规定,且不违背公序良俗。
117.根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
118.图10示出了可以用来实施本公开的实施例的示例电子设备1000的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
119.如图10所示,设备1000包括计算单元1001,其可以根据存储在只读存储器(rom)1002中的计算机程序或者从存储单元1008加载到随机访问存储器(ram)1003中的计算机程序,来执行各种适当的动作和处理。在ram 1003中,还可存储设备1000操作所需的各种程序和数据。计算单元1001、rom 1002以及ram 1003通过总线1004彼此相连。输入/输出(i/o)接口1005也连接至总线1004。
120.设备1000中的多个部件连接至i/o接口1005,包括:输入单元1006,例如键盘、鼠标等;输出单元1007,例如各种类型的显示器、扬声器等;存储单元1008,例如磁盘、光盘等;以及通信单元1009,例如网卡、调制解调器、无线通信收发机等。通信单元1009允许设备1000通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
121.计算单元1001可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1001的一些示例包括但不限于中央处理单元(cpu)、图形处理单元(gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(dsp)、以及任何适当的处理器、控制器、微控制器等。计算单元1001执行上文所描述的各个方法和处理,例如数据处理方法。例如,在一些实施例中,数据处理方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1008。在一些实施例中,计算机程序的部分或者全部可以经由rom 1002和/或通信单元1009而被载入和/或安装到设备1000上。当计算机程序加载到ram 1003并由计算单元1001执行时,可以执行上文描述的数据处理方法的一个或多个步骤。备选地,在其他实施例中,计算单元1001可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行数据处理方法。
122.本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、负载可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器
可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
123.用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
124.在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
125.为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入、或者触觉输入)来接收来自用户的输入。
126.可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)和互联网。
127.计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。
128.应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
129.上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1