一种插件化的代码开发系统、方法、设备及存储介质技术方案

技术编号:34120325 阅读:9 留言:0更新日期:2022-07-14 12:52
本公开提供了一种插件化的代码开发系统、方法、设备及存储介质,代码开发系统由具有依赖关系的多个插件构成,中心调度插件用于在接收到第一插件对应的用户指令时时,确定依赖第一插件的插件,并将该插件中的对象注入到第一插件中。第一插件用于执行被注入的对象。本公开基于插件化的思想,将开发工具中的功能抽象化并以插件的形式实现,由具有依赖关系的插件构成代码开发系统,且由中心调度插件实现代码开发系统中的各个插件进行加载和对象注入功能。由于代码开发系统由插件构成,能够满足不同开发团队对开发工具的定制化需求,提高项目开发的效率。开发的效率。开发的效率。

【技术实现步骤摘要】
一种插件化的代码开发系统、方法、设备及存储介质


[0001]本公开涉及数据处理领域,尤其涉及一种插件化的代码开发系统、方法、设备及存储介质。

技术介绍

[0002]随着项目开发复杂度的不断提升,对开发工具的要求也越来越高。对于参与开发人员较多的大型项目而言,往往会对开发工具进行设计和改造,以满足本次项目的开发需求。
[0003]为了提高项目开发的效率,如何满足不同开发团队对开发工具的定制化需求,是目前亟需解决的技术问题。

技术实现思路

[0004]为了解决上述技术问题或者至少部分地解决上述技术问题,本公开提供了一种插件化的代码开发系统、方法、设备及存储介质,能够满足不同开发团队对开发工具的定制化需求,从而提高项目开发的效率。
[0005]第一方面,本公开提供了一种插件化的代码开发系统,所述代码开发系统由具有依赖关系的多个插件构成,所述多个插件中包括中心调度插件;
[0006]所述中心调度插件,用于在接收到第一插件对应的用户指令时时,确定依赖所述第一插件的插件,并将依赖所述第一插件的插件中的对象注入到所述第一插件中;其中,所述第一插件属于所述多个插件;
[0007]所述第一插件,用于执行被注入的所述对象。
[0008]可选的,所述对象包括逻辑方法,所述中心调度插件包括方法注入模块;
[0009]所述方法注入模块,用于将依赖所述第一插件的插件中的所述逻辑方法注入到所述第一插件中;
[0010]相应的,所述第一插件,具体用于执行所述第一插件中被注入的所述逻辑方法。
[0011]可选的,所述对象包括用户界面组件数据,所述中心调度插件包括组件数据注入模块;
[0012]所述组件数据注入模块,用于将依赖所述第一插件的插件中的所述用户界面组件数据注入到所述第一插件中;
[0013]相应的,所述第一插件,具体用于在接收到预设用户指令时,组装所述第一插件中被注入的所述用户界面组件数据,并基于组装后的所述组件数据执行用户界面绘制操作,得到绘制有组件的用户界面。
[0014]可选的,所述中心调度插件还包括操作方法执行模块;
[0015]所述第一插件,还用于在接收到针对所述用户界面上的所述组件的触发操作时,获取所述组件对应的操作标识,并将所述操作标识发送至所述操作方法执行模块;
[0016]所述操作方法执行模块,用于基于所述操作方法依赖关系生成所述操作标识对应
的调用顺序栈,并基于所述调用顺序栈执行所述操作标识对应的操作方法;其中,所述操作方法依赖关系为基于插件的依赖关系确定。
[0017]可选的,所述第一插件的作用域为第一工作空间;所述多个插件中还包括仓库管理插件和工作空间管理插件;
[0018]所述工作空间管理插件,用于将所述第一工作空间中针对所述第一插件的配置信息提交至所述仓库管理插件;
[0019]所述仓库管理插件,用于将所述配置信息上传至远端服务器。
[0020]第二方面,本公开提供了一种插件化的代码开发方法,所述方法包括:
[0021]在接收到第一插件对应的用户指令时,确定依赖所述第一插件的插件;其中,所述代码开发系统由具有依赖关系的所述多个插件构成,所述第一插件属于所述多个插件;
[0022]将依赖所述第一插件的插件中的对象注入到所述第一插件中;
[0023]执行所述第一插件中被注入的所述对象。
[0024]可选的,所述将依赖所述第一插件的插件中的对象注入到所述第一插件中,包括:
[0025]将依赖所述第一插件的插件中的逻辑方法注入到所述第一插件中;
[0026]相应的,所述执行所述第一插件中被注入的所述对象,包括:
[0027]执行所述第一插件中被注入的所述逻辑方法。
[0028]可选的,所述将依赖所述第一插件的插件中的对象注入到所述第一插件中,包括:
[0029]将依赖所述第一插件的插件中的组件注入到所述第一插件中;
[0030]相应的,所述执行所述第一插件中被注入的所述对象,包括:
[0031]组装所述第一插件中被注入的所述组件对应的用户界面数据,并基于组装后的所述用户界面数据执行用户界面绘制操作,得到绘制有所述组件的用户界面。
[0032]可选的,所述方法还包括:
[0033]在接收到针对所述用户界面上的所述组件的触发操作时,获取所述组件对应的操作标识;
[0034]基于操作方法依赖关系生成所述操作标识对应的调用顺序栈,并基于所述调用顺序栈执行所述操作标识对应的操作方法;其中,所述操作方法依赖关系为基于插件的依赖关系确定。
[0035]第三方面,本公开提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备实现上述的方法。
[0036]第四方面,本公开提供了一种设备,包括:存储器,处理器,及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现上述的方法。
[0037]本公开实施例提供的技术方案与现有技术相比具有如下优点:
[0038]本公开实施例提供了一种插件化的代码开发系统,由具有依赖关系的多个插件构成,其中,多个插件中包括中心调度插件。具体的,中心调度插件用于在接收到第一插件对应的用户指令时,确定依赖第一插件的插件,并将该插件中的对象注入到第一插件中。第一插件用于执行第一插件中被注入的对象。
[0039]本公开实施例基于插件化的思想,将开发工具中的功能抽象化并以插件的形式实现,由具有依赖关系的插件构成代码开发系统,且由中心调度插件实现代码开发系统中的
各个插件进行加载和对象注入功能。由于代码开发系统由插件构成,对于开发人员而言,可以基于开发需求选择所需插件构成代码开发系统,可见,本公开实施例能够满足不同开发团队对开发工具的定制化需求,从而提高了项目开发的整体效率。
附图说明
[0040]此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
[0041]为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0042]图1为本公开实施例提供的一种插件化的代码开发系统的结构示意图;
[0043]图2为本公开实施例提供的一种代码开发系统的具体实现示意图;
[0044]图3为本公开实施例提供的一种GUI插件技术的实现过程示意图;
[0045]图4为本公开实施例提供的一种操作方法依赖关系示意图;
[0046]图5为本公开实施例提供的一种插件化的代码开发方法的流程图;
[0047]图6为本公开实施例提供的一种插件化的代码开发设备的结构示意图。
具体实施方式本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种插件化的代码开发系统,其特征在于,所述代码开发系统由具有依赖关系的多个插件构成,所述多个插件中包括中心调度插件;所述中心调度插件,用于在接收到第一插件对应的用户指令时,确定依赖所述第一插件的插件,并将依赖所述第一插件的插件中的对象注入到所述第一插件中;其中,所述第一插件属于所述多个插件;所述第一插件,用于执行被注入的所述对象。2.根据权利要求1所述的系统,其特征在于,所述对象包括逻辑方法,所述中心调度插件包括方法注入模块;所述方法注入模块,用于将依赖所述第一插件的插件中的所述逻辑方法注入到所述第一插件中;相应的,所述第一插件,具体用于执行所述第一插件中被注入的所述逻辑方法。3.根据权利要求1所述的系统,其特征在于,所述对象包括用户界面组件数据,所述中心调度插件包括组件数据注入模块;所述组件数据注入模块,用于将依赖所述第一插件的插件中的所述用户界面组件数据注入到所述第一插件中;相应的,所述第一插件,具体用于组装所述第一插件中被注入的所述用户界面组件数据,并基于组装后的所述组件数据执行用户界面绘制操作,得到绘制有组件的用户界面。4.根据权利要求3所述的系统,其特征在于,所述中心调度插件还包括操作方法执行模块;所述第一插件,还用于在接收到针对所述用户界面上的所述组件的触发操作时,获取所述组件对应的操作标识,并将所述操作标识发送至所述操作方法执行模块;所述操作方法执行模块,用于基于操作方法依赖关系生成所述操作标识对应的调用顺序栈,并基于所述调用顺序栈执行所述操作标识对应的操作方法;其中,所述操作方法依赖关系为基于插件的依赖关系确定。5.根据权利要求1所述的系统,其特征在于,所述第一插件的作用域为第一工作空间;所述多个插件中还包括仓库管理插件和工作空间管理插件;所述工作空间管理插件,用于将所述第一工作空间中针对所述第一插件的配置信息提交至所述仓库管理插件;所述仓库管理插件,用于将所述配置信息上传至远端服...

【专利技术属性】
技术研发人员:李尧詹迟晶赵新宇陈思齐
申请(专利权)人:北京字跳网络技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1