CN111782251B - 一种软件功能模块的更新方法、装置及计算机设备 - Google Patents

一种软件功能模块的更新方法、装置及计算机设备 Download PDF

Info

Publication number
CN111782251B
CN111782251B CN202010832339.3A CN202010832339A CN111782251B CN 111782251 B CN111782251 B CN 111782251B CN 202010832339 A CN202010832339 A CN 202010832339A CN 111782251 B CN111782251 B CN 111782251B
Authority
CN
China
Prior art keywords
function module
module
functional module
client
program set
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.)
Active
Application number
CN202010832339.3A
Other languages
English (en)
Other versions
CN111782251A (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.)
Glodon Co Ltd
Original Assignee
Glodon Co Ltd
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 Glodon Co Ltd filed Critical Glodon Co Ltd
Priority to CN202010832339.3A priority Critical patent/CN111782251B/zh
Publication of CN111782251A publication Critical patent/CN111782251A/zh
Application granted granted Critical
Publication of CN111782251B publication Critical patent/CN111782251B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Abstract

本发明公开了一种软件功能模块的更新方法、装置及计算机设备,其中,该方法包括:将客户端功能模块的第一运行地址与客户端功能模块所属的功能模块程序集的第二运行地址存储于不同目录;检查服务器端是否存在与客户端功能模块相对应的新版本功能模块;若存在与客户端功能模块相对应的新版本功能模块,则客户端以新版本功能模块替换客户端功能模块;在功能模块程序集中设置中间层数据模型,通过中间层数据模型对不同版本的功能模块进行数据转换。通过实施本发明,实现了功能模块程序集和功能模块各自发布,无需等待软件集成,保证了用户能够一直使用最新功能,保证了软件产品厂商能够及时进行产品验证,降低了功能模块的集成时间。

Description

一种软件功能模块的更新方法、装置及计算机设备
技术领域
本发明涉及软件工程技术领域,具体涉及一种软件功能模块的更新方法、装置及计算机设备。
背景技术
目前桌面端的软件产品安装一般采用的都是安装包的形式,用户下载安装包后直接安装。若软件产品厂家开发了新版本软件,需要用户覆盖安装或者卸载旧版本软件再安装新版本软件。目前软件产品的使用者需要了解软件产品各个版本之间的差异,否则可能因为软件产品版本的更迭导致原先可以使用的功能在更新升级后无法使用,给使用者造成了很大不便;且软件产品的内部通常由很多功能模块组成,每个开发团队负责一个功能模块,不同的开发团队就会存在开发进度不同的问题,如果每次推出新版本软件都要等待所有开发团队完成后一起发布,则不利于尽快推向市场并抢占用户,进而导致不利于产品验证。
因此,对于用户而言,其希望软件产品安装之后可以一直使用最新产品,不需要覆盖安装或卸载旧版本软件,且用户也希望能够避免因不同版本功能变化太大而改变使用习惯;对于软件产品厂商而言,其希望新版本软件产品或软件新功能尽快推向市场进行产品验证和吸引用户,因此,对软件产品厂商而言,如何避免新功能模块的等待发布时间尤为重要。然而基于软件产品越大,集成成本越高,其集成周期也就越长,无法及时发布新功能。
发明内容
因此,本发明要解决的技术问题在于克服现有技术中的软件产品的功能模块发布等待时间长,用户使用不便的缺陷,从而提供一种软件功能模块的更新方法、装置及计算机设备。
根据第一方面,本发明实施例提供一种软件功能模块的更新方法,包括:将客户端功能模块的运行地址与所述客户端功能模块所属的功能模块程序集的运行地址存储于不同目录;检查服务器端是否存在与所述客户端功能模块相对应的新版本功能模块;若存在与所述客户端功能模块相对应的新版本功能模块,则所述客户端以所述新版本功能模块替换所述客户端功能模块;在所述功能模块程序集中设置中间层数据模型,通过所述中间层数据模型对不同版本的功能模块进行数据转换。
结合第一方面,在第一方面的第一实施方式中,在所述将客户端功能模块的存储运行地址与所述客户端功能模块所属的功能模块程序集存储于不同目录之前,还包括:读取所述功能模块程序集中包含的所述客户端功能模块的配置文件;根据所述配置文件确定需要所述存储运行地址的所述客户端功能模块以及所述存储运行地址的运行参数;根据所述运行参数在所述存储运行地址中启动所述客户端功能模块。
结合第一方面,在第一方面的第二实施方式中,所述通过所述中间层数据模型对不同集成版本的功能模块进行数据转换,包括:当新版本功能模块程序集对应的功能模块包含新增字段,判断所述新增字段是否影响原有功能模块程序集的数据使用逻辑;若所述新增字段不影响所述原有功能模块程序集的数据使用逻辑,则所述中间层数据模型在进行数据转换时丢弃所述新增字段;若所述新增字段影响所述原有功能模块程序集的数据使用逻辑,则所述中间层数据模型在丢弃所述新增字段的同时还原原始字段,在进行数据转换时将所述原始字段和所述新增字段进行合并。
结合第一方面第二实施方式,在第一方面的第三实施方式中,所述通过所述中间层数据模型对不同集成版本的功能模块进行数据转换,还包括:当新版本功能模块程序集对应的功能模块包含删除字段,则所述中间层数据模型在进行数据转换时将所述删除字段的位置进行填充。
结合第一方面第二实施方式,在第一方面的第四实施方式中,所述通过所述中间层数据模型对不同集成版本的功能模块进行数据转换,还包括:当新版本功能模块程序集对应的功能模块包含替换字段,则所述中间层数据模型在进行数据转换时将所述替换字段对应位置的内容删除,同时以所述替换字段的内容进行填充,并将所述替换字段作为新增字段,执行判断所述新增字段是否影响原有功能模块程序集的数据使用逻辑的步骤。
结合第一方面,在第一方面的第五实施方式中,还包括:获取所述新版本功能模块运行产生的窗体显示信息;将所述窗体显示信息显示至所述功能模块程序集的显示界面的预设区域上。
根据第二方面,本发明实施例提供一种软件功能模块的更新装置,包括:隔离模块,用于将客户端功能模块的运行地址与所述客户端功能模块所属的功能模块程序集的运行地址存储于不同目录;检查模块,用于检查服务器端是否存在与所述客户端功能模块相对应的新版本功能模块;替换模块,用于若存在与所述客户端功能模块相对应的新版本功能模块,则所述客户端以所述新版本功能模块替换所述客户端功能模块;转换模块,用于在所述功能模块程序集中设置中间层数据模型,通过所述中间层数据模型对不同版本的功能模块进行数据转换。
结合第二方面,在第二方面的第一实施方式中,软件功能模块的更新装置还包括:读取模块,用于读取所述功能模块程序集中包含的所述客户端功能模块的配置文件;确定模块,用于根据所述配置文件确定需要所述存储运行地址的所述客户端功能模块以及所述存储运行地址的运行参数;启动模块,用于根据所述运行参数在所述存储运行地址中启动所述客户端功能模块。
根据第三方面,本发明实施例提供一种计算机设备,包括:存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行第一方面或第一方面任一实施方式所述的软件功能模块的更新方法。
根据第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使所述计算机执行第一方面或第一方面任一实施方式所述的软件功能模块的更新方法。
本发明技术方案,具有如下优点:
1.本发明提供的软件功能模块的更新方法、装置及计算机设备,通过将客户端功能模块的运行地址与客户端功能模块所属的功能模块程序集的运行地址分别存储于不同的目录,实现了将客户端功能模块的运行环境与功能模块程度集的运行环境进行目录隔离,进而避免了功能模块程序集的安装、卸载和更新会破坏其客户端功能模块的运行环境;通过检查服务器端是否存在与客户端功能模块相对应的新版本功能模块,若存在与客户端功能模块相对应的新版本功能模块,客户端则以新版本功能模块替换客户端功能模块,保证了用户安装功能模块程序集之后,可以一直使用最新功能模块程序集的最新功能,不需要覆盖安装或卸载旧版本功能模块程序集,进而保证了用户不会因不同版本功能变化太大而改变使用习惯导致,方便了用户使用;通过在功能模块程序集中设置中间层数据模型,通过中间层数据模型对不同版本的功能模块进行数据转换,保证功能模块程序集的输出文件能够被客户端功能模块识别和解析以兼容不同版本的功能模块,使功能模块程序集能够使用不同版本的功能模块,进而保证了功能模块程序集和功能模块各自发布,互不干扰。
同时,软件产品厂商可以及时将其开发的新功能模块发布至服务器端,由于客户端功能模块的运行环境与客户端功能模块所属的功能模块程序集的运行环境是相互独立的,下载安装新版本功能模块并不会影响功能模块程序集的使用,安装功能模块程序集的用户则可以从服务器端下载新版本功能模块至客户端,以新版本功能模块覆盖客户端功能模块体验功能模块程序集的新功能,进而保证了软件产品厂商可以及时发布功能模块程序集的新功能以进行产品验证,无需等待软件集成,降低了新功能模块的集成时间和等待发布时间。
2.本发明提供的软件功能模块的更新方法、装置及计算机设备,通过新版本功能模块启动运行界面后,控制功能模块程序集对其运行界面进行捕获,并获取新版本功能模块发送的运行界面的窗体显示信息,再根据窗体显示信息将新版本功能模块的运行界面加载到功能模块程序集中,保证了尽管功能模块程序集和新版本功能模块为两个独立的运行进程,但两者运行后如同一个进程,实现了功能模块和功能模块程序集之间的界面共享。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中软件功能模块的更新方法的流程图;
图2为本发明实施例中软件功能模块的更新方法的另一流程图;
图3为本发明实施例中配置文件的示意图;
图4为本发明实施例中软件功能模块的更新方法的另一流程图;
图5为本发明实施例中中间层数据模型的数据转换示意图;
图6为本发明实施例中建模数据和计算的解耦的整体结构示意图;
图7为本发明实施例中工程类的示意图;
图8为本发明实施例中工程的示意图;
图9为本发明实施例中楼层容器的示意图;
图10为本发明实施例中图元管理器的示意图;
图11为本发明实施例中构件图元的示意图;
图12为本发明实施例中软件功能模块的更新方法的另一流程图;
图13为本发明实施例中软件功能模块的更新装置的原理框图;
图14为本发明实施例中计算机设备的结构示意图。
具体实施方式
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,还可以是两个元件内部的连通,可以是无线连接,也可以是有线连接。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
实施例1
本实施例提供一种软件功能模块的更新方法,应用于软件安装与升级更新,以实现解耦不同功能模块的发布更新时间不同步,克服各功能模块之间存在版本差异相互不兼容的问题。如图1所示,该软件功能模块的更新方法,包括如下步骤:
S11,将客户端功能模块的第一运行地址与客户端功能模块所属的功能模块程序集的第二运行地址进行目录隔离。
示例性地,功能模块程序集为多个功能模块集成在一起以进行协同工作的软件。客户端功能模块为安装于计算机客户端的运行程序。第一运行地址为客户端功能模块的运行环境,第二运行地址为功能模块程序集的运行环境。将客户端功能模块的第一运行地址与客户端功能模块所属的功能模块程序集的第二运行地址存储在不同的目录中以实现目录隔离,即客户端功能模块的运行环境和功能模块程序集的运行环境相互独立。例如,若客户端功能模块所属的功能模块程序集的运行环境的安装目录为A,则将客户端功能模块的运行环境安装在目录B,实现客户端功能模块与功能模块程序集的目录隔离。
S12,检查服务器端是否存在与客户端功能模块相对应的新版本功能模块。
示例性地,服务器端可以为发布功能模块程序集新版本功能模块的云端,当功能模块程序集更新了功能,则会将新版本功能模块发布至云端服务器。当功能模块程序集启动且其运行环境正常时,则可以检测服务器端是否存在与客户端功能模块相对应的新版本功能模块。例如,当前功能模块程序集的版本为V1.0,其客户端功能模块为版本1.0,当功能模块程序集启动且其运行环境正常时,则可以检测服务器端是否存在与版本1.0的客户端功能模块相对应的新版本1.1的功能模块;或者,当前功能模块程序集的版本为V1.0,其客户端功能模块为功能模块程序集版本V2.0对应的功能模块2.0,当功能模块程序集V1.0启动且其运行环境正常时,则可以检测服务器端是否存在与版本2.0的客户端功能模块相对应的新版本2.1的功能模块。上述对功能模块程序集、功能模块的版本描述仅为举例,本申请对功能模块的版本不作限定。
S13,若存在与客户端功能模块相对应的新版本功能模块,则客户端以新版本功能模块替换客户端功能模块。
示例性地,若检测到服务器端存在与客户端功能模块相对应的新版本功能模块,则从服务器端下载该新版本功能模块至客户端。新版本功能模块下载完成之后由客户端对该新版本功能模块进行安装,并在安装新版本功能模块的过程中自动替换旧版本的客户端功能模块。
S14,在功能模块程序集中设置中间层数据模型,通过中间层数据模型对不同版本的功能模块进行数据转换。
示例性地,中间层数据模型为统一数据格式的数据模块,用于兼容不同版本的功能模块。由于功能模块的发布版本和功能模块程序集的发布版本不同步,则两者所对应的数据模型会发生改变,为了避免出现不同版本的功能模块程序集和不同版本的功能模块之间无法兼容的问题,需要中间层数据模型对不同版本功能模块程序集对应的不同版本功能模块进行数据转换。
功能模块需要共享功能模块程序集的输出文件,但由于两者版本号不一致,导致功能模块程序集输出的文件,功能模块并不一定能够识别和解析,例如,功能模块程序集在开发过程中会增加、删除或者替换原有功能模块程序集版本定义的数据模型,导致新版本功能模块与原有功能模块程序集协同工作时会出现解析出错的问题。因此,当功能模块程序集对原有功能模块程序集版本的数据模型进行增、删、替操作后,需要中间层数据模型以适配修改后的数据模型。对于一些只有新版本功能模块程序集才会使用的输出数据则不必进行数据转换,这样可以减少中间层数据模型的维护工作量,从而提升中间层数据模型的解析效率。
本实施例提供的软件功能模块的更新方法,通过将客户端功能模块的运行地址与客户端功能模块所属的功能模块程序集的运行地址分别存储于不同的目录,实现了将客户端功能模块的运行环境与功能模块程度集的运行环境进行目录隔离,进而避免了功能模块程序集的安装、卸载和更新会破坏其客户端功能模块的运行环境;通过检查服务器端是否存在与客户端功能模块相对应的新版本功能模块,若存在与客户端功能模块相对应的新版本功能模块,客户端则以新版本功能模块替换客户端功能模块,保证了用户安装功能模块程序集之后,可以一直使用最新功能模块程序集的最新功能,不需要覆盖安装或卸载旧版本功能模块程序集,进而保证了用户不会因不同版本功能变化太大而改变使用习惯导致,方便了用户使用;通过在功能模块程序集中设置中间层数据模型,通过中间层数据模型对不同版本的功能模块进行数据转换,保证功能模块程序集的输出文件能够被客户端功能模块识别和解析以兼容不同版本的功能模块,使功能模块程序集能够使用不同版本的功能模块,进而保证了功能模块程序集和功能模块各自发布,互不干扰。
同时,软件产品厂商可以及时将其开发的新功能模块发布至服务器端,由于客户端功能模块的运行环境与客户端功能模块所属的功能模块程序集的运行环境是相互独立的,下载安装新版本功能模块并不会影响功能模块程序集的使用,安装功能模块程序集的用户则可以从服务器端下载新版本功能模块至客户端,以新版本功能模块覆盖客户端功能模块体验功能模块程序集的新功能,进而保证了软件产品厂商可以及时发布功能模块程序集的新功能以进行产品验证,无需等待软件集成,降低了新功能模块的集成时间和等待发布时间。
作为一个可选的实施方式,如图2所示,在步骤S11之前,该软件功能模块的更新方法还包括:
S100,读取功能模块程序集中包含的客户端功能模块的配置文件。
示例性地,配置文件为记录客户端功能模块的名称和依赖项等信息的文件。功能模块程序集是由多个功能模块集成的,当启动功能模块程序集后需要读取功能模块程序集所包含的各个功能模块的配置文件。
S101,根据配置文件确定需要第一运行地址的客户端功能模块以及第一运行地址的运行参数。
示例性地,根据读取到的各个功能模块的配置文件,对需要独立运行环境的客户端功能模块进行标记,进而确定功能模块程序集中需要配置独立运行环境的客户端功能模块,并为需要配置独立运行环境的客户端功能模块设定运行参数。例如,土建软件GTJ2018中包含相对独立的云检查模块、云指标模块和云审核模块,则将云检查模块、云指标模块和云审核模块这三个模块分别安装在不同的目录,即这三个模块需要独立运行环境,在不同的运行地址中运行云检查、云指标和云审核的相关功能。通过配置文件将上述三个模块的名称及依赖项名称存放在配置文件里面,配置文件如图3所示。当启动软件GTJ2018时,通过读取配置文件就可以确定需要独立运行环境的功能模块以及独立运行环境的运行参数。
S102,根据运行参数在第一运行地址中启动客户端功能模块。
示例性地,在第一运行地址中,利用确定好的运行参数对客户端功能模块进行启动。例如,通过配置文件确定启动客户端功能模块所需要的依赖库信息,将该依赖库信息与客户端功能模块进行对应,根据设置好的依赖库信息启动客户端功能模块。
作为一个可选的实施方式,如图2所示,该软件功能模块的更新方法还包括:
首先,判断第一运行地址是否运行正常。
示例性地,通过在第一运行地址中运行客户端功能模块,判断第一运行地址是否正常。若客户端功能模块能够在第一运行地址中正常启动,则可以判定第一运行地址运行正常。例如,客户端功能模块在第一运行地址中进行正常启动运行需要依赖库信息,若是运行参数中缺少依赖库信息,或者依赖库信息被修改,则客户端功能模块无法正常运行,即客户端功能模块的独立运行环境异常。
其次,若第一运行地址不正常,则初始化第一运行地址。
示例性地,若独立运行环境不正常,即第一运行地址不正常,此时则需要初始化客户端功能模块的第一运行地址。例如,当客户端功能模块的独立运行环境缺少依赖库则会导致其独立运行环境不正常。在功能模块程序集启动后,会对客户端功能模块的运行环境进行初始化,以保证客户端功能模块的第一运行地址正常,若第一运行地址不正常,则需要对客户端功能模块的第一运行地址重新进行初始化。
作为一个可选的实施方式,如图4所示,该软件功能模块的更新方法还包括:
S15,在客户端功能模块与功能模块程序集之间建立用以进行数据传输的通信连接。
示例性地,由于功能模块程序集的运行环境和客户端功能模块的运行环境是独立的,即功能模块程序集和客户端功能模块是两个独立运行的进程,因此需要在客户端功能模块与功能模块程序集之间建立通信连接,用于客户端功能模块与功能模块程序集进行通信数据传输。具体地,可以在功能模块程序集和客户端功能块中设置通信模块,实现两个进程之间能够直接的进行数据传输和命令传输。其中,通信模块可以使用不同的通信协议,例如,socket、共享内存和管道等,功能模块程序集和客户端功能块可以对交互的数据格式进行定义,以便双方能够互相识别和执行所传输的数据和命令等通信数据。
本实施例提供的软件功能模块的更新方法,通过在客户端功能模块与功能模块程序集之间建立用以进行数据传输的通信连接,保证功能模块程序集和客户端功能模块两个进程之间能够直接进行数据传输和命令传输。
作为一个可选的实施方式,如图5所示,上述步骤S14,包括:
当新版本功能模块程序集对应的功能模块包含新增字段,判断新增字段是否影响原有功能模块程序集的数据使用逻辑;若新增字段不影响原有功能模块程序集的数据使用逻辑,则中间层数据模型在进行数据转换时丢弃所述新增字段;若新增字段影响原有功能模块程序集的数据使用逻辑,则中间层数据模型在丢弃新增字段的同时还原原始字段,在进行数据转换时将原始字段和新增字段进行合并。
示例性地,若开发的新版本功能模块程序集相对于原有功能模块程序集,其数据模型中增加了新字段,则新版本功能模块程序集对应的功能模块中亦包含新增字段,判断新增字段是否会影响原有功能模块程序集的数据使用逻辑,若新增字段只是为满足新版本功能模块程序集的业务需求,并会不影响原有功能模块程序集的数据使用逻辑,则中间层数据模型在进行数据转换时直接将该新增字段丢弃即可。例如,原有功能模块程序集对应的客户端功能模块的数据模型包括字段1和字段2,若新版本功能模块程序集对应的新版本功能模块的数据模型包括字段1、字段2和字段3,且字段3仅是为了贴合新版本功能模块程序集的业务需求而增加的,则当原有功能模块程序集未进行替换安装,仅以新版本功能模块替换当前客户端功能模块时,由于原有功能模块程序集中的数据模型无需字段3,即字段3并不会影响原有功能模块程序集的数据使用逻辑,此时中间层数据模型在进行数据转换时丢弃该新增字段3即可。
若新增字段会影响原有功能模块程序集的数据使用逻辑,则中间层数据模型在丢弃新增字段的同时,需要还原原有功能模块程序集的原始字段,在进行数据转换时将原始字段和新增字段进行合并。其中,新增字段可以是从原始字段分裂出来的,本申请对新增字段不作限定。例如,原有功能模块程序集对应的客户端功能模块的数据模型包括字段1和字段2,新版本功能模块程序集对应的新版本功能模块的数据模型包括字段1、字段2和字段3,而字段3是为了实现新版本功能模块对应新功能的必要字段,则中间层数据模型在进行数据转换时丢弃该新增字段3,并对原有字段1和字段2进行还原,则当以新版本功能模块替换当前客户端功能模块时,由于字段3是实现新功能所必要的字段,即字段3会影响原有功能模块程序集的数据使用逻辑,此时中间层数据模型在进行数据转换时需要将原始字段1、字段2和字段3进行合并。
作为一个可选的实施方式,如图5所示,上述步骤S14,还包括:当新版本功能模块程序集对应的功能模块包含删除字段,则中间层数据模型在进行数据转换时将删除字段的位置进行填充。
示例性地,若开发的新版本功能模块程序集相对于原有功能模块程序集,其数据模型中删除了某字段,则新版本功能模块程序集对应的功能模块中亦包含删除字段。对于删除字段,中间层数据模型在进行数据转换可以将删除字段所处位置以默认值进行填充,使其数据结构保持和原有功能模块程序集的数据模型相一致。例如,原有功能模块程序集对应的客户端功能模块的数据模型包括字段1和字段2,若新版本功能模块程序集对应的新版本功能模块的数据模型删除了字段2仅保留字段1,则当以新版本功能模块替换当前客户端功能模块时,由于原有功能模块程序集中的数据模型包括字段1和字段2,此时中间层数据模型在进行数据转换时,则在字段2的位置以默认值字段A进行填充,组成字段1和字段A,以字段A作为字段2,则字段1和字段A组合为新版本功能模块的数据模型,使之与原有功能模块程序集的数据模型相一致。需要说明的是,实际使用中,删除字段的场景比较少,对于不用的字段可以直接放置不用,则可以不对字段进行删除而导致数据模型发生改变。
作为一个可选的实施方式,如图5示,上述步骤S15,还包括:当新版本功能模块程序集对应的功能模块包含替换字段,则中间层数据模型在进行数据转换时将替换字段对应位置的内容删除,同时以替换字段的内容进行填充,并将替换字段作为新增字段,执行判断新增字段是否影响原有功能模块程序集的数据使用逻辑的步骤。
示例性地,若开发的新版本功能模块程序集相对于原有功能模块程序集,其数据模型中仅是替换了其中的某个字段,则新版本功能模块程序集对应的功能模块中亦包含该替换字段。对于替换数据模型中的某字段,实质上为对某字段进行删除,然后在删除字段的所在位置以替换字段所对应的内容进行填充,该替换字段则相当于新增字段,继而执行判断新增字段是否影响原有功能模块程序集的数据使用逻辑的步骤,详细说明参见上述实施方式对应的相关叙述,此处不再赘述。
以一个具体的实例来对中间层数据模型进行说明,以土建软件GTJ2018为例,其中为了实现建模数据和计算的解耦,对建模数据进行改造,生成了中间层数据,具体如下:
如图6所示为建模数据和计算的解耦的整体结构,在中间数据层模块中,对建模的所有数据(即计算过程会用到的数据)进行封装,后续的计算则不再依赖建模部分的数据模型对象。其中,中间数据层模块共包括土建计算设置、钢筋计算设置和公共部分3个部分,公共部分包括工程设置(公共)、区域楼层和构件图元。如图7所示,以柱子为例,IGTJProject为工程类接口,提供了获取楼层容器和图元管理器的接口;图元管理器包含构件和图元类;每个构件类型有具体的图元类。
如图8所示为所建立的工程,整个中间数据层用类GTJProject进行管理,里面包含楼层容器(如图9所示)、图元管理器(如图10所示)以及各个设置项。GTJProject在计算中使用的地方较多,避免多次传入传出,类本身设计成单例模式,需要建模的IGMPModel进行初始化。“设置”的具体类设计有GCLCalcSetting,其它的不再详细说明。由图10所示的图元管理容器类用于管理所有图元和构件,负责将建模图元、构件转换成中间数据层的模型结构;对外提供了两个同名接口(getEDOData),分别用于中间数据层的初始化和计算的后续使用;管理器还提供几种方法,根据特定条件对图元进行过滤,返回图元集合。需要注意的是此处对外不提供构件的创建接口,若构件无图元参与计算,则不需要创建,各构件图元如图11所示。
以上述土建产品建模图元转换为中间层数据的详细流程为:获取建模图元;判断建模图元是否经过转换,若建模图元未经过转换则判断建模图元是否需要执行转换过程;确定不需要转换的建模图元,当进行转换时跳过不需要转换的建模图元;获取建模图元的构件中间层数据,将构件作为建模图元的模板传入图元转换模块;创建建模图元中间层数据实体;填充建模图元中间层数据实体;从构件模板中取出所有的字段作为建模图元中间层数据的默认字段;从建模图元里面取出所对应字段的值进行填充;填充完成后对整个图元中间层数据进行序列化;将序列化的数据存储到物理文件中。将中间层数据转换成模型数据或者直接使用的过程为上述流程的一个反流化过程,此处不再赘述。
作为一个可选的实施方式,如图12所示,该软件功能模块的更新方法还包括:
S16,获取新版本功能模块运行产生的窗体显示信息。
示例性地,当新版本功能模块替换客户端功能模块安装之后,功能模块程序集再次启动后,其新版本功能模块随之启动。由于新版本功能模块的独立运行环境是功能模块程序集初始化,所以功能模块程序集可以通过不同的方式启动新版本功能模块,例如,直接获取新版本功能模块的EXE文件路径,或者在初始化独立运行环境的同时启动新版本功能模块的守护进程,而守护进程需要由新版本功能模块实现,因此可以发送启动命令启动新版本功能模块,若通过发送命令的方式启动功能模块,则需要在功能模块中实现对显示命令的解析,并执行启动操作。
窗体显示信息可以包括窗体句柄(windows窗体特有的)、窗体大小和位置等。当新版本功能模块启动后,功能模块程序集可以捕获新版本功能模块运行显示界面,新版本功能模块可以将其窗体显示信息发送至功能模块程序集,便于功能模块程序集及时获取新版本功能模块的窗体显示信息进行窗体显示设置。
S17,将窗体显示信息显示至功能模块程序集的显示界面的预设区域上。
示例性地,预设区域可以为被替换的客户端功能模块在功能模块程序集上的显示区域,也可以为根据新版本功能模块设置的显示区域,本申请对此不作限定,本领域技术人员可以根据实际需要确定。当功能模块程序集获取到新版本功能模块的窗体信息后,可以将运行新版本功能模块运行时显示的窗体显示在功能模块程序集的显示界面的预设区域上。具体地,新版本功能模块和功能模块程序集之间对显示区域进行预先定义;或者功能模块程序集可以通过容器将新版本功能模块的窗体显示包含在其中。
本实施例提供的软件功能模块的更新方法,通过新版本功能模块启动运行界面后,控制功能模块程序集对其运行界面进行捕获,并获取新版本功能模块发送的运行界面的窗体显示信息,再根据窗体显示信息将新版本功能模块的运行界面加载到功能模块程序集中,保证了尽管功能模块程序集和新版本功能模块为两个独立的运行进程,但两者运行后如同一个进程,实现了功能模块和功能模块程序集之间的界面共享。
实施例2
本实施例提供了一种软件功能模块的更新装置,应用于软件安装与升级更新,以实现解耦不同功能模块的发布更新时间不同步,克服各功能模块之间存在版本差异相互不兼容的问题。如图13所示,包括:
隔离模块21,用于将客户端功能模块的运行地址与客户端功能模块所属的功能模块程序集的运行地址存储于不同目录。详细内容参见上述方法实施例对应步骤S11的相关描述。
检查模块22,用于检查服务器端是否存在与客户端功能模块相对应的新版本功能模块。详细内容参见上述方法实施例对应步骤S12的相关描述。
替换模块23,用于若存在与客户端功能模块相对应的新版本功能模块,则客户端以新版本功能模块替换客户端功能模块。详细内容参见上述方法实施例对应步骤S13的相关描述。
转换模块24,用于在功能模块程序集中设置中间层数据模型,通过中间层数据模型对不同版本的功能模块进行数据转换。详细内容参见上述方法实施例对应步骤S14的相关描述。
本实施例提供的软件功能模块的更新装置,通过将客户端功能模块的运行地址与客户端功能模块所属的功能模块程序集的运行地址分别存储于不同的目录,实现了将客户端功能模块的运行环境与功能模块程度集的运行环境进行目录隔离,进而避免了功能模块程序集的安装、卸载和更新会破坏其客户端功能模块的运行环境;通过检查服务器端是否存在与客户端功能模块相对应的新版本功能模块,若存在与客户端功能模块相对应的新版本功能模块,客户端则以新版本功能模块替换客户端功能模块,保证了用户安装功能模块程序集之后,可以一直使用最新功能模块程序集的最新功能,不需要覆盖安装或卸载旧版本功能模块程序集,进而保证了用户不会因不同版本功能变化太大而改变使用习惯导致,方便了用户使用;通过在功能模块程序集中设置中间层数据模型,通过中间层数据模型对不同版本的功能模块进行数据转换,保证功能模块程序集的输出文件能够被客户端功能模块识别和解析以兼容不同版本的功能模块,使功能模块程序集能够使用不同版本的功能模块,进而保证了功能模块程序集和功能模块各自发布,互不干扰。
同时,软件产品厂商可以及时将其开发的新功能模块发布至服务器端,由于客户端功能模块的运行环境与客户端功能模块所属的功能模块程序集的运行环境是相互独立的,下载安装新版本功能模块并不会影响功能模块程序集的使用,安装功能模块程序集的用户则可以从服务器端下载新版本功能模块至客户端,以新版本功能模块覆盖客户端功能模块体验功能模块程序集的新功能,进而保证了软件产品厂商可以及时发布功能模块程序集的新功能以进行产品验证,无需等待软件集成,降低了新功能模块的集成时间和等待发布时间。
作为一个可选的实施方式,该软件功能模块的更新装置还包括:
读取模块,用于读取功能模块程序集中包含的客户端功能模块的配置文件。详细内容参见上述方法实施例对应步骤S100的相关描述。
确定模块,用于根据配置文件确定需要存储运行地址的客户端功能模块以及存储运行地址的运行参数。详细内容参见上述方法实施例对应步骤S101的相关描述。
启动模块,用于根据运行参数在存储运行地址中启动客户端功能模块。详细内容参见上述方法实施例对应步骤S102的相关描述。
作为一个可选的实施方式,该软件功能模块的更新装置还包括:
判断模块,用于判断第一运行地址是否运行正常。详细内容参见上述方法实施例对应的相关描述。
初始化模块,用于若第一运行地址不正常,则初始化第一运行地址。详细内容参见上述方法实施例对应的相关描述。
作为一个可选的实施方式,该软件功能模块的更新装置还包括:
通信模块,用于在客户端功能模块与功能模块程序集之间建立用以进行数据传输的通信连接。详细内容参见上述方法实施例对应步骤S15的相关描述。
本发明提供的软件功能模块的更新装置,通过在客户端功能模块与功能模块程序集之间建立用以进行数据传输的通信连接,保证功能模块程序集和客户端功能模块两个进程之间能够直接进行数据传输和命令传输。
作为一个可选的实施方式,上述转换模块24,包括:
判断子模块,用于当新版本功能模块程序集对应的功能模块包含新增字段,判断新增字段是否影响原有功能模块程序集的数据使用逻辑。详细内容参见上述方法实施例对应的相关描述。
丢弃子模块,用于若新增字段不影响原有功能模块程序集的数据使用逻辑,则中间层数据模型在进行数据转换时丢弃新增字段。详细内容参见上述方法实施例对应的相关描述。
合并子模块,若新增字段影响原有功能模块程序集的数据使用逻辑,则中间层数据模型在丢弃新增字段的同时还原原始字段,在进行数据转换时将原始字段和新增字段进行合并。详细内容参见上述方法实施例对应的相关描述。
作为一个可选的实施方式,上述转换模块24,还包括:
填充子模块,用于当新版本功能模块程序集对应的功能模块包含删除字段,则中间层数据模型在进行数据转换时将删除字段的位置进行填充。详细内容参见上述方法实施例对应的相关描述。
作为一个可选的实施方式,上述转换模块24,还包括:
替换子模块,用于当新版本功能模块程序集对应的功能模块包含替换字段,则中间层数据模型在进行数据转换时将替换字段对应位置的内容删除,同时以替换字段的内容进行填充,并将替换字段作为新增字段,执行判断新增字段是否影响原有功能模块程序集的数据使用逻辑的步骤。详细内容参见上述方法实施例对应的相关描述。
作为一个可选的实施方式,该软件功能模块的更新装置还包括:
获取模块,用于获取新版本功能模块运行产生的窗体显示信息。详细内容参见上述方法实施例对应步骤S16的相关描述。
显示模块,用于将窗体显示信息显示至功能模块程序集的显示界面的预设区域上。详细内容参见上述方法实施例对应步骤S17的相关描述。
本实施例提供的软件功能模块的更新装置,通过新版本功能模块启动运行界面后,控制功能模块程序集对其运行界面进行捕获,并获取新版本功能模块发送的运行界面的窗体显示信息,再根据窗体显示信息将新版本功能模块的运行界面加载到功能模块程序集中,保证了尽管功能模块程序集和新版本功能模块为两个独立的运行进程,但两者运行后如同一个进程,实现了功能模块和功能模块程序集之间的界面共享。
实施例3
本实施例提供一种计算机设备,如图14所示,该设备包括处理器31和存储器32,其中处理器31和存储器32可以通过总线或者其他方式连接,图14中以通过总线30连接为例。
处理器31可以为中央处理器(Central Processing Unit,CPU)。处理器31还可以为其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、图形处理器(Graphics Processing Unit,GPU)、嵌入式神经网络处理器(Neural-network ProcessingUnit,NPU)或者其他专用的深度学习协处理器、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。
存储器32作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本发明实施例中的软件功能模块的更新方法对应的程序指令/模块(如图13所示的隔离模块21、检查模块22、替换模块23和转换模块24)。处理器31通过运行存储在存储器32中的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及数据处理,即实现上述方法实施例中的软件功能模块的更新方法。
存储器32可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储处理器31所创建的数据等。此外,存储器32可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器32可选包括相对于处理器31远程设置的存储器,这些远程存储器可以通过网络连接至处理器31。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
所述一个或者多个模块存储在所述存储器32中,当被所述处理器31执行时,执行如图1-图13所示实施例中的软件功能模块的更新方法。
通过将客户端功能模块的运行地址与客户端功能模块所属的功能模块程序集的运行地址分别存储于不同的目录,实现了将客户端功能模块的运行环境与功能模块程度集的运行环境进行目录隔离,进而避免了功能模块程序集的安装、卸载和更新会破坏其客户端功能模块的运行环境;通过检查服务器端是否存在与客户端功能模块相对应的新版本功能模块,若存在与客户端功能模块相对应的新版本功能模块,客户端则以新版本功能模块替换客户端功能模块,保证了用户安装功能模块程序集之后,可以一直使用最新功能模块程序集的最新功能,不需要覆盖安装或卸载旧版本功能模块程序集,进而保证了用户不会因不同版本功能变化太大而改变使用习惯导致,方便了用户使用;通过在功能模块程序集中设置中间层数据模型,通过中间层数据模型对不同版本的功能模块进行数据转换,保证功能模块程序集的输出文件能够被客户端功能模块识别和解析以兼容不同版本的功能模块,使功能模块程序集能够使用不同版本的功能模块,进而保证了功能模块程序集和功能模块各自发布,互不干扰。
同时,软件产品厂商可以及时将其开发的新功能模块发布至服务器端,由于客户端功能模块的运行环境与客户端功能模块所属的功能模块程序集的运行环境是相互独立的,下载安装新版本功能模块并不会影响功能模块程序集的使用,安装功能模块程序集的用户则可以从服务器端下载新版本功能模块至客户端,以新版本功能模块覆盖客户端功能模块体验功能模块程序集的新功能,进而保证了软件产品厂商可以及时发布功能模块程序集的新功能以进行产品验证,无需等待软件集成,降低了新功能模块的集成时间和等待发布时间。
上述计算机设备具体细节可以对应参阅图1至图13所示的实施例中对应的相关描述和效果进行理解,此处不再赘述。未在本实施例中详尽描述的技术细节,具体可参见如图1至图13所示的实施例中的相关描述。
本发明实施例还提供一种非暂态计算机存储介质,所述计算机存储介质存储有计算机可执行指令,该计算机可执行指令可执行上述任意方法实施例中的软件功能模块的更新方法。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)、随机存储记忆体(Random Access Memory,RAM)、快闪存储器(Flash Memory)、硬盘(HardDisk Drive,缩写:HDD)或固态硬盘(Solid-State Drive,SSD)等;所述存储介质还可以包括上述种类的存储器的组合。
显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。

Claims (10)

1.一种软件功能模块的更新方法,其特征在于,包括:
将客户端功能模块的第一运行地址与所述客户端功能模块所属的功能模块程序集的第二运行地址存储于不同目录;
检查服务器端是否存在与所述客户端功能模块相对应的新版本功能模块;
若存在与所述客户端功能模块相对应的新版本功能模块,则所述客户端以所述新版本功能模块替换所述客户端功能模块;
在所述功能模块程序集中设置中间层数据模型,通过所述中间层数据模型对不同版本的功能模块进行数据转换;
其中,所述中间层数据模型为统一数据格式的数据模块,用于兼容不同版本的功能模块,以适配修改后的数据模型。
2.根据权利要求1所述的方法,其特征在于,在所述将客户端功能模块的第一运行地址与所述客户端功能模块所属的功能模块程序集的第二运行地址存储于不同目录之前,还包括:
读取所述功能模块程序集中包含的所述客户端功能模块的配置文件;
根据所述配置文件确定需要所述第一运行地址的所述客户端功能模块以及所述第一运行地址的运行参数;
根据所述运行参数在所述第一运行地址中启动所述客户端功能模块。
3.根据权利要求1所述的方法,其特征在于,所述通过所述中间层数据模型对不同集成版本的功能模块进行数据转换,包括:
当新版本功能模块程序集对应的功能模块包含新增字段,判断所述新增字段是否影响原有功能模块程序集的数据使用逻辑;
若所述新增字段不影响所述原有功能模块程序集的数据使用逻辑,则所述中间层数据模型在进行数据转换时丢弃所述新增字段;
若所述新增字段影响所述原有功能模块程序集的数据使用逻辑,则所述中间层数据模型在丢弃所述新增字段的同时还原原始字段,在进行数据转换时将所述原始字段和所述新增字段进行合并。
4.根据权利要求3所述的方法,其特征在于,所述通过所述中间层数据模型对不同集成版本的功能模块进行数据转换,还包括:
当新版本功能模块程序集对应的功能模块包含删除字段,则所述中间层数据模型在进行数据转换时将所述删除字段的位置进行填充。
5.根据权利要求3所述的方法,其特征在于,所述通过所述中间层数据模型对不同集成版本的功能模块进行数据转换,还包括:
当新版本功能模块程序集对应的功能模块包含替换字段,则所述中间层数据模型在进行数据转换时将所述替换字段对应位置的内容删除,同时以所述替换字段的内容进行填充,并将所述替换字段作为新增字段,执行判断所述新增字段是否影响原有功能模块程序集的数据使用逻辑的步骤。
6.根据权利要求1所述的方法,其特征在于,还包括:
获取所述新版本功能模块运行产生的窗体显示信息;
将所述窗体显示信息显示至所述功能模块程序集的显示界面的预设区域上。
7.一种软件功能模块的更新装置,其特征在于,包括:
隔离模块,用于将客户端功能模块的运行地址与所述客户端功能模块所属的功能模块程序集的运行地址存储于不同目录;
检查模块,用于检查服务器端是否存在与所述客户端功能模块相对应的新版本功能模块;
替换模块,用于若存在与所述客户端功能模块相对应的新版本功能模块,则所述客户端以所述新版本功能模块替换所述客户端功能模块;
转换模块,用于在所述功能模块程序集中设置中间层数据模型,通过所述中间层数据模型对不同版本的功能模块进行数据转换;其中,所述中间层数据模型为统一数据格式的数据模块,用于兼容不同版本的功能模块,以适配修改后的数据模型。
8.根据权利要求7所述的装置,其特征在于,还包括:
读取模块,用于读取所述功能模块程序集中包含的所述客户端功能模块的配置文件;
确定模块,用于根据所述配置文件确定需要所述存储运行地址的所述客户端功能模块以及所述存储运行地址的运行参数;
启动模块,用于根据所述运行参数在所述存储运行地址中启动所述客户端功能模块。
9.一种计算机设备,其特征在于,包括:存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行权利要求1-6中任一项所述的软件功能模块的更新方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使所述计算机执行权利要求1-6中任一项所述的软件功能模块的更新方法。
CN202010832339.3A 2020-08-18 2020-08-18 一种软件功能模块的更新方法、装置及计算机设备 Active CN111782251B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010832339.3A CN111782251B (zh) 2020-08-18 2020-08-18 一种软件功能模块的更新方法、装置及计算机设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010832339.3A CN111782251B (zh) 2020-08-18 2020-08-18 一种软件功能模块的更新方法、装置及计算机设备

Publications (2)

Publication Number Publication Date
CN111782251A CN111782251A (zh) 2020-10-16
CN111782251B true CN111782251B (zh) 2024-04-30

Family

ID=72762528

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010832339.3A Active CN111782251B (zh) 2020-08-18 2020-08-18 一种软件功能模块的更新方法、装置及计算机设备

Country Status (1)

Country Link
CN (1) CN111782251B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112416308A (zh) * 2020-11-30 2021-02-26 上海汽车集团股份有限公司 一种软件优化方法、装置及软件架构
CN113486020B (zh) * 2021-07-27 2024-02-23 中国银行股份有限公司 基础数据平台的切源方法、相关装置及计算机存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5732275A (en) * 1996-01-11 1998-03-24 Apple Computer, Inc. Method and apparatus for managing and automatically updating software programs
CN101110788A (zh) * 2006-07-20 2008-01-23 阿里巴巴公司 升级客户端软件的方法及系统
CN106528125A (zh) * 2016-10-26 2017-03-22 腾讯科技(深圳)有限公司 一种数据文件的增量更新方法和服务器、客户端以及系统
CN107947981A (zh) * 2017-11-23 2018-04-20 锐捷网络股份有限公司 一种网络设备管理方法和装置
CN108037946A (zh) * 2017-11-03 2018-05-15 金证财富南京科技有限公司 一种应用程序热更新的方法、系统及服务器

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5732275A (en) * 1996-01-11 1998-03-24 Apple Computer, Inc. Method and apparatus for managing and automatically updating software programs
CN101110788A (zh) * 2006-07-20 2008-01-23 阿里巴巴公司 升级客户端软件的方法及系统
CN106528125A (zh) * 2016-10-26 2017-03-22 腾讯科技(深圳)有限公司 一种数据文件的增量更新方法和服务器、客户端以及系统
CN108037946A (zh) * 2017-11-03 2018-05-15 金证财富南京科技有限公司 一种应用程序热更新的方法、系统及服务器
CN107947981A (zh) * 2017-11-23 2018-04-20 锐捷网络股份有限公司 一种网络设备管理方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
电厂大修管理系统软件结构的设计实现;吴健德, 刘林, 王默玉;现代电力(第02期);全文 *

Also Published As

Publication number Publication date
CN111782251A (zh) 2020-10-16

Similar Documents

Publication Publication Date Title
US10379846B1 (en) Systems and methods for real time version control for integrating updated web-based components with a native application
US10725769B2 (en) Automated deployment and servicing of distributed applications
CN105144093B (zh) 使用基础设施管理代理供应的工作负荷部署
US7823023B2 (en) Test framework for testing an application
CN110413288B (zh) 应用部署方法、装置、服务器及存储介质
CN104094226B (zh) 使用部署配置文件自动更新客户端设备上的应用或者驱动
US20030195951A1 (en) Method and system to dynamically detect, download and install drivers from an online service
US20140082511A1 (en) Method and system for emulating desktop software applications in a mobile communication network
CN111984269B (zh) 提供应用构建服务的方法及应用构建平台
CN111782251B (zh) 一种软件功能模块的更新方法、装置及计算机设备
US20080256225A1 (en) Osgi-Based Dynamic Service Management Method for Context-Aware Systems
US9507748B2 (en) Platform runtime abstraction
JP6089065B2 (ja) アップデート方法及びコンピュータシステム
US8782636B2 (en) Information processing apparatus, control method thereof, and program
CN112292664A (zh) 用于设计分布式异构计算和控制系统的方法和系统
JP5800685B2 (ja) 情報処理装置及びサーバ、制御方法、プログラム及び記録媒体
CN116860266A (zh) 应用容器化部署方法、装置、电子设备及存储介质
CN117337429A (zh) 部署机器学习模型
CN113961220A (zh) 程序自动更新方法及装置
US10540175B2 (en) Up-level applications to a new OS
WO2016167768A1 (en) Rolling back apps to previously installed versions
CN113535328B (zh) 一种应用实例控制方法、装置、设备及存储介质
CN112486504A (zh) 交互方法、上位机和计算机可读存储介质
JP5251197B2 (ja) メッセージ処理方法、メッセージ処理装置、及びプログラム
KR20020071151A (ko) 서버에서 클라이언트 컴퓨터에 소프트웨어를 원격설치하기 위한 방법 및 시스템

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