WO2021103495A1 - 一种用于药物设计系统的插件系统及其生成方法和更新方法 - Google Patents

一种用于药物设计系统的插件系统及其生成方法和更新方法 Download PDF

Info

Publication number
WO2021103495A1
WO2021103495A1 PCT/CN2020/096301 CN2020096301W WO2021103495A1 WO 2021103495 A1 WO2021103495 A1 WO 2021103495A1 CN 2020096301 W CN2020096301 W CN 2020096301W WO 2021103495 A1 WO2021103495 A1 WO 2021103495A1
Authority
WO
WIPO (PCT)
Prior art keywords
plug
drug design
version
configuration table
module
Prior art date
Application number
PCT/CN2020/096301
Other languages
English (en)
French (fr)
Inventor
雷焱森
刘阳
谈樑
马健
温书豪
赖力鹏
Original Assignee
深圳晶泰科技有限公司
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 深圳晶泰科技有限公司 filed Critical 深圳晶泰科技有限公司
Priority to PCT/CN2020/096301 priority Critical patent/WO2021103495A1/zh
Publication of WO2021103495A1 publication Critical patent/WO2021103495A1/zh

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating

Definitions

  • the present invention belongs to the technical field of plug-in platforms, and specifically relates to a plug-in system for a drug design system and its generation method and update method. Background technique
  • a plug-in is a program written in compliance with a certain standardized application program interface, which can only run on the system platform specified by the program (may support multiple platforms at the same time), and cannot run separately from the specified platform. Because the plug-in needs to call the function library or data provided by the original pure system.
  • Native desktop software a native application closer to the system, is a traditional C/S architecture, and most drug design software on the market builds desktop applications based on this technology.
  • the native application of native desktop software is closer to the system, and performance is its biggest advantage.
  • it needs to provide customized development on various platforms, which requires too much manpower, time and money, and long-term maintenance and updates also require more energy; summary It has the following shortcomings: 1. It can only handle some multi-systems with a single function; 2. It is not easy to expand due to the need to install the client, which is difficult to install and deploy; 3. If the client uses different systems, it must be written separately for these systems Program; 4. The client interface lacks versatility, and the interface needs to be changed when the business changes;
  • the technical problem to be solved by the present invention is: how to provide a plug-in system and its generation for a drug design system that is simple to implement, easy to rapid development iteration and version update Method and update method.
  • a plug-in system for a drug design system including:
  • Baseline management module The baseline version is updated according to a quarter or a fixed time point
  • Configuration table The configuration table is used to configure a description representing all information of a scene, where the configuration table describes how to combine multiple plug-in Panels into a scene.
  • Plug-ins a list of plug-ins required by the scene
  • the plug-in system exposes multiple panels, cells, and lib to the outside, where panel, cel 1 and lib respectively interact with interfaces provided by the plug-in system; wherein, the plug-in system will be described according to the configuration table Draw the combined layout of the Panel;
  • the panel is injected into the designated panel area by the plug-in system, and the plug-in system controls the flexible layout; [0021] Wherein, one Panel contains multiple cells, the cell occupancy is designated by the plugin developer, and the specific plugin is loaded by the plugin system;
  • This application additionally provides a method for generating a plug-in system for the drug design system, which is used to generate the plug-in system for the drug design system, and the steps of the plug-in generation method are:
  • Step S101 Write one or more separately maintained plug-ins, and read the plug-in declaration definition when starting the drug design system;
  • Step S102 According to the plug-in declaration definition, convert the controls in the drug design system into general control objects; write a scene configuration describing how the plug-in is laid out;
  • Step S103 The plug-in loads and renders the plug-in according to the configuration table
  • Step S104 The plug-in provides free layout to freely change the position of the Panel
  • Step S105 Go back to step S101, add new functions to the plug-in and modify the version number
  • Step S106 Detect that there is a new version of the plug-in, and download and use the new plug-in.
  • the above-mentioned method for generating a plug-in system for the drug design system is implemented by the following plug-in generation system, and the plug-in generation system includes:
  • a reading module which is used to read the declaration definition of the plug-in when the drug design system is started
  • a rendering plug-in module which can load and render the plug-in according to the configuration table
  • Layout module the layout module can be freely laid out to achieve free change of Panel panel position
  • An add module where the add module is used to add new functions to the plug-in and modify the version number
  • the download module the download module is used to detect whether there is a new version of the plug-in, and when the new version of the plug-in exists, the download module starts the download program to download the new plug-in, and then uses the new plug-in.
  • an optimization module which is used to delete redundant data and invalid data in the plug-in.
  • This application also provides a method for updating the plug-in system of the drug design system, which includes the following steps
  • the above-mentioned update method for the plug-in system of the drug design system is implemented by the following plug-in update rules, and the plug-in update rules include at least one of the following:
  • Rule 2 Whether the currently installed plug-in belongs to a random version number that can be installed
  • Rule 3 Whether the currently installed plug-in belongs to an installable ignore version number.
  • the above-mentioned method for updating the plug-in system of the drug design system is implemented by the following update system, which is applied to the plug-in host, and the update system includes:
  • the judging module judging whether the configuration table has a version, and if so, downloading the latest configuration table
  • the present invention has the following advantages:
  • the plug-in platform described in this application can be understood as a host program that provides an interface that can be called by the plug-in.
  • the plug-in platform can be an application program that can provide a certain application service.
  • the plug-in platform can be a client program that can interact with the server program or the background.
  • the plug-in provided by the present invention only needs to be responsible for the development of a small part of the business, which will effectively provide rapid development capabilities for drug design software, and users can experience new functions more conveniently.
  • the plug-in system acts as a software host to dynamically load local
  • the plug-in needs to have some plug-in management capabilities.
  • FIG. 1 is a flowchart of a plug-in generation method applied to a plug-in host according to the present invention
  • FIG. 2 is a code schematic diagram of a plug-in generation method applied to a plug-in host according to the present invention
  • FIG. 3 is a flowchart of a plug-in generation method applied to a plug-in host according to the present invention
  • FIG. 4 is a flowchart of a plug-in update method applied to a plug-in host according to the present invention
  • FIG. 5 is a screenshot of the plug-in view in the actual project after the plug-in is installed according to the present invention
  • FIG. 6 is a screenshot according to the design of the present invention.
  • FIG. 7 is an example of a package, son file according to the present invention.
  • FIG. 8 is a flow chart of the prior art. Inventive embodiment of the present invention
  • Embodiment 1 As shown in FIG. 1, a plug-in system for a drug design system includes:
  • Baseline management module The baseline version is updated according to a quarter or a fixed time point, and the manager manages the baseline to ensure that the dependencies between plugins in the current baseline are absolutely available;
  • Configuration table The configuration table is used to configure a description representing all information of a scene, where the configuration table describes how to combine multiple plug-in Panels into a scene.
  • the configuration table has the following key fields: Name: the unique identifier of the scene; Description: the description of the scene; Version: the update basis of the scene; Plugins (Plugins): The list of plug-ins required by the scene; Layout: The basis for the scene to use plug-ins for layout drawing.
  • Embodiment 2 As shown in FIG. 3, a plug-in can be understood as a package, which exposes multiple panels, cels, and libs, and the plug-in developer uses the interface provided by the plug-in system to interact; the system will be configured according to the configuration The Panel combination layout described in the table is drawn.
  • the plug-in system is injected into the designated panel area, and the plug-in system controls the flexible layout.
  • a Panel may contain multiple Cells, the cell occupancy is designated by the plug-in developer, and specific plug-ins are loaded by the plug-in system.
  • Lib non-visual area
  • a type that only exposes methods without a visual interface can generally be used for algorithm packaging or data processing.
  • Embodiment 3 A type that only exposes methods without a visual interface can generally be used for algorithm packaging or data processing.
  • the plug-in update method is shown in Figure 4: Regarding the version dependency between plug-ins and the plug-in dependency on the host interface version, under this coupling relationship, if the version of the relying party changes (function logic and interface changes occur), how to ensure compatibility The entire APP runs normally. To ensure this, the plug-in will be updated uniformly only after the baseline version is upgraded.
  • the update process :
  • a new version of the baseline indicates that it is currently in an updatable state, and immediately check the configuration table version
  • the plug-in After the plug-in is installed, it can be used in time without other operations.
  • the plug-in will load the plug-in and draw the layout according to the layout description of the configuration table, as shown in FIG. 5.
  • the present invention avoids terminal software developers from maintaining multiple terminal software developments in the form of a GUI plug-in system, which greatly improves development efficiency.
  • the host application of the GUI plug-in system only needs to be installed once, and more terminal applications can be experienced incrementally, which prevents users from installing multiple applications, and improves the user experience.
  • the first step Write the specific content of the plug-in, which is composed of view display and business logic.
  • the plug-in is composed of Panel/Cell/Lib
  • Step 2 In the package, json under the plug-in directory, describe Panel/Cell/Lib under the plug-in for the framework to call the corresponding module.
  • Step 3 Write a scene configuration file, describing the plugins that the scene depends on and the default layout (layout) drawn using the plugin Panel.
  • the scene and plugin files are stored in a unified directory and waiting for the framework to be used load.
  • Step 4 Read the scene configuration by default when running the framework. Before the framework uses plug-ins, look for the required plug-ins according to the plugins field in the scene configuration to preload them into the memory.
  • Step 5 The framework draws the default layout according to the layout description in the scene configuration table, and loads the panel of the plug-in to the designated Panel position.
  • the complex algorithm logic can be stored in the 1ib method library, which can be conveniently called in the design business.
  • the plug-in system has a mechanism for updating plug-ins. After comparing versions (vision), the update mechanism is triggered, the latest plug-in files are stored in a unified directory, and the plug-ins are updated to obtain the latest functions to meet the rapid iteration experience of design functions.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

一种用于药物设计系统的插件系统及其生成方法和更新方法。插件系统包括基线管理模块和配置表:基线版本按照固定时间点更新;配置表用于配置表示一个场景所有信息的描述;生成方法为:编写一个或多个单独维护的插件,启动药物设计系统时,读取插件声明定义;根据插件声明定义,将药物设计系统中的控件转换为通用控件对像;编写一个场景配置描述用插件如何布局;插件根据配置表加载并渲染插件;插件提供自由布局自由改变Panel面板位置;为插件添加新功能并修改版本号;检测插件存在新版本,下载使用新插件。所述方法易于实现快速开发迭代与版本更新,使用户能够及时体验最新功能。

Description

一 种用 于药 物 设计 系统 的插 件系 统及 其生 成 方法 和更 新 方 法 技术领域
[0001] 本发明属于插件平台技术领域, 具体涉及一种用于药物设计系统的插件系统及 其生成方法和更新方法。 背景技术
[0002] 插件是一种遵循一定规范的应用程序接口编写出来的程序, 其只能运行在程序 规定的系统平台下 (可能同时支持多个平台) , 而不能脱离指定的平台单独运 行。 因为插件需要调用原纯净系统提供的函数库或者数据。
[0003] 在现有的网络环境中, 很多软件都有插件, 而插件也有无数种。 计算机辅助药 物设计是化学、 生物学、 数学、 物理学以及计算机科学交叉的产物, 其也需要 用到插件。 目前来说药物设计软件的插件主要有:
[0004] 原生桌面软件, 原生应用更接近系统, 是传统的 C/S架构, 市面上大多数药物 设计软件都基于该技术构建桌面应用。 原生桌面软件的原生应用更接近系统, 性能是其最大的优势, 但其需要在各平台提供提定制开发, 需要耗费过多人力 、 时间和资金, 长期维护更新还需要耗费更多的精力; 总结其存在以下缺点: 1 .只能处理一些功能单一的多系统; 2.由于需要安装客户端, 安装部署困难, 所 以不易扩展; 3.若客户端使用的系统不同, 就要针对这些系统分别编写程序; 4 .客户端界面缺乏通用性, 且当业务更改时就需要更改界面;
[0005] 基于 web技术构建的基础桌面应用, 使用 Electron构建桌面应用, 可以方便的 在一次编写代码后构建 windows、 mac和 linux平台的桌面应用。 使用 web技术构 建桌面应用, 可以很方便的构建桌面应用, 一次构建应用可以在多个平台运行 ; 但也存在一定的维护缺陷, 例如同时维护多个桌面应用, 每个应用都会由多 个可复用的组件构成, 新功能组件的更新需要应用再次构建、 发布、 用户更新 版本才能体验最新功能的繁琐操作, 其流程图如图 1所示。
[0006] 综上所述, 药物设计软件在药物设计中起着至关重要的作用, 但其不易于快速 开发迭代与版本更新的问题一直得不到很好的解决。 桌面端应用避免不了反复 的构建发布与更新, 导致桌面应用维护困难而且用户不能及时体验最新功能。 [0007] 因此, 怎样才能够提供一种实现简单, 易于快速开发迭代和版本更新的一种用 于药物设计系统的插件系统及其生成方法和更新方法, 成为本领域技术人员有 待解决的技术问题。 发明概 述 技术问题 问题的解 决方案 技术解决方案
[0008] 针对上述现有技术的不足, 本发明所要解决的技术问题是: 怎样才能够提供一 种实现简单, 易于快速开发迭代和版本更新的一种用于药物设计系统的插件系 统及其生成方法和更新方法。
[0009] 为了解决上述技术问题, 本发明采用了如下的技术方案:
[0010] 一种用于药物设计系统的插件系统, 包括:
[0011] 基线管理模块: 基线版本按照一个季度或固定时间点更新;
[0012] 配置表: 所述配置表用于配置表示一个场景所有信息的描述, 其中, 所述配置 表描述了如何将多个插件 Panel组合为一个场景。
[0013] 进一步地, 所述的配置表中有以下关键字段:
[0014] 名称, 场景的唯一标识;
[0015] 描述, 场景的描述;
[0016] 版本, 场景的更新依据;
[0017] 插件, 场景所需要的插件列表;
[0018] 布局, 场景需要使用插件进行布局绘制的依据。
[0019] 进一步地, 所述插件系统向外暴露多个 panel、 cell和 lib, 其中, panel、 cel 1和 lib分别采用插件系统提供的接口进行交互; 其中, 所述插件系统将根据配 置表描述的 Panel组合布局进行绘制;
[0020] 更进一步地, 所述的 Panel由插件系统注入到指定 panel区域, 由插件系统控制 灵活布局; [0021] 其中, 一个 Panel中包含多个 Cell, 由插件开发者指定 Cell占位, 由插件系统 加载具体插件;
[0022] 其中, Lib只暴露方法而没有可视化界面的类型。
[0023] 本申请另外提供了一种用于药物设计系统的插件系统的生成方法, 用于生成所 述的用于药物设计系统的插件系统, 所述的插件生成方法的步骤为:
[0024] 步骤 S101: 编写一个或多个单独维护的插件, 启动药物设计系统时, 读取插件 声明定义;
[0025] 步骤 S102: 根据插件声明定义, 将药物设计系统中的控件转换为通用控件对像 ; 编写一个场景配置描述用插件如何布局;
[0026] 步骤 S103: 插件根据配置表加载并渲染插件;
[0027] 步骤 S104: 插件提供自由布局自由改变 Panel面板位置;
[0028] 步骤 S105: 回到步骤 S101, 为插件添加新功能并修改版本号;
[0029] 步骤 S106: 检测插件存在新版本, 下载使用新插件。
[0030] 进一步地, 上述的用于药物设计系统的插件系统的生成方法, 是通过以下的插 件生成系统来实现, 所述的插件生成系统包括:
[0031] 读取模块, 所述读取模块在启动药物设计系统时, 用于读取插件的声明定义; [0032] 渲染插件模块, 所述渲染插件模块能够根据配置表加载并渲染插件;
[0033] 布局模块, 所述布局模块能够自由布局以实现自由改变 Panel面板位置;
[0034] 添加模块, 所述添加模块用于为插件添加新功能并修改版本号;
[0035] 下载模块, 所述下载模块用于检测插件是否存在新版本, 当插件存在新版本时 , 该下载模块启动下载程序来下载新插件, 然后使用新插件。
[0036] 进一步地, 还包括: 优化模块, 该优化模块用于将所述插件中的冗余数据和无 效数据进行删除。
[0037] 本申请还提供了一种用于药物设计系统的插件系统的更新方法, 包括以下步骤
[0038] (A)、 插件平台被启动后, 获取本地的核心插件对应的更新策略, 检查基线是 否更新;
[0039] (B)、 检测出基线有新版本, 则说明当前为可更新状态, 立即检查配置表版本 [0040] (C)、 判断配置表是否存在版本, 如果是, 则下载最新配置表;
[0041] (D)、 读取最新配置表, 检查插件列表;
[0042] (E)、 插件存在新版本, 更新插件。
[0043] 进一步地, 上述的用于药物设计系统的插件系统的更新方法, 是通过以下的插 件更新规则来实现, 所述插件更新规则包括下列至少之一:
[0044] 规则一: 当前已安装插件是否位于可安装的最低版本与最高版本间范围;
[0045] 规则二: 当前已安装插件是否属于可安装的随机版本号;
[0046] 规则三: 当前已安装插件是否属于可安装的忽略版本号。
[0047] 进一步地, 上述的用于药物设计系统的插件系统的更新方法, 是通过以下的更 新系统来实现的, 所述的更新系统应用于插件宿主, 更新系统包括:
[0048] 确定模块, 确定待加载的插件的进程, 检查基线是否更新;
[0049] 判断模块, 判断配置表是否存在版本, 如果是, 则下载最新配置表;
[0050] 读取模块, 读取最新配置表, 检查插件列表;
[0051] 运行模块, 插件存在新版本, 更新插件。 发明的 有益效果 有益效果
[0052] 与现有技术相比, 本发明具有如下优点:
[0053] 1 ) 本申请所述的插件平台可以理解为一种宿主程序, 提供可被插件调用的接 口。 从一种角度来理解插件平台, 插件平台可以是一种应用程序, 其可以提供 某种应用服务。 从另一种角度来理解插件平台, 插件平台可以是一种客户端程 序, 其可与服务端程序或后台进行交互。
[0054] 2) 本发明所提供的插件只需要负责开发小部分业务, 这将有效为药物设计软 件提供快速开发的能力, 用户可以更便捷地体验到新功能, 插件系统作为软件 宿主动态加载本地插件需要具备一些插件管理能力。 对附图 的简要说 明 附图说明
[0055] 图 1为根据本发明中的应用于插件宿主的插件生成方法的流程图; [0056] 图 2为根据本发明中的应用于插件宿主的插件生成方法的代码示意图;
[0057] 图 3为根据本发明中的应用于插件宿主的插件生成方法的流程图;
[0058] 图 4为根据本发明中的应用于插件宿主的插件更新方法的流程图;
[0059] 图 5为根据本发明中的应用于安装插件后插件视图在实际工程中的截图;
[0060] 图 6为根据本发明中的设计截图;
[0061] 图 7为根据本发明中的 package, j son文件示例;
[0062] 图 8为现有技术的流程图。 发明实施 例 本发明的实施方 式
[0063] 下面将结合附图及实施例对本发明作进一步说明。
[0064] 实施例 1: 如图 1所示, 一种用于药物设计系统的插件系统, 包括:
[0065] 基线管理模块: 基线版本按照一个季度或固定时间点更新, 由管理者管理基线 , 保证当前基线内插件间依赖绝对可用;
[0066] 配置表: 所述配置表用于配置表示一个场景所有信息的描述, 其中, 所述配置 表描述了如何将多个插件 Panel组合为一个场景。 其中, 如图 2所示, 所述的配 置表中有以下关键字段: Name (名称) :场景的唯一标识; Description (描述 ) : 场景的描述; Version (版本) : 场景的更新依据; Plugins (插件) : 场 景所需要的插件列表; Layout (布局) : 场景需要使用插件进行布局绘制的依 据。
[0067] 实施例 2: 如图 3所示, 一个插件可以理解为一个包, 其向外暴露多个 panel、 c ell和 lib, 插件开发者使用插件系统提供的接口进行交互; 系统将根据配置表 描述的 Panel组合布局进行绘制。
[0068] Panel (可视区域)
[0069] 由插件系统注入到指定 panel区域, 由插件系统控制灵活布局。
[0070] Cell (可视区域)
[0071] 一个 Panel中可包含多个 Cell, 由插件开发者指定 Cell占位, 由插件系统加载 具体插件。
[0072] Lib (非可视区域) [0073] 只暴露方法而没有可视化界面的类型, 一般可用于算法封装或数据处理。 [0074] 实施例 3:
[0075] 插件更新方式, 如图 4所示: 关于插件间版本依赖、 插件依赖宿主接口版本, 这种耦合关系下, 如果被依赖方版本变动 (发生功能逻辑和接口改动) , 需要 如何兼容保证整体 APP正常运行, 为保证这一点插件只有在基线版本升级后才统 一更新, 更新流程:
[0076] 发起检查动作后首先检查基线是否更新;
[0077] 基线有新版本说明当前为可更新状态, 立即检查配置表版本;
[0078] 配置表存在版本, 立即下载最新配置表;
[0079] 读取最新配置表, 检查插件列表;
[0080] 插件存在新版本, 立即更新插件;
[0081] 安装插件后无需其它操作即可及时使用, 插件将根据配置表的布局描述加载插 件并进行布局绘制, 如图 5所示。
[0082] 本发明以 GUI插件系统的形式避免终端软件开发者维护多个终端软件开发, 很 好的提升了开发效率。
[0083] 采用本发明的方案, 仅需安装一次 GUI插件系统的宿主应用, 即可增量体验更 多的终端应用, 避免用户安装多个应用, 很好的提升了用户体验。
[0084] 采用本发明的方案的效果对比如表 1所示:
[0085] 表 1 []
[表 1]
Figure imgf000009_0001
[0086]
[0087] 本申请应用在药物设计系统时, 如图 7所示, 将传统的药物设计业务流程拆分 成负责独立模块的插件。 业务模块抽象为插件, 插件生成与运行的具体步骤为
[0088] 第一步: 编写插件具体构成内容, 由视图展示与业务逻辑组成, 在之前的说明 中已经提及插件的构成为Panel/Cell/Lib
[0089] 第二步: 在插件目录下的package, json描述该插件下的Panel/Cell/Lib, 供框 架调用对应模块。
[0090] 第三步: 编写场景配置文件, 描述该场景所依赖的插件 (plugins) 以及使用 插件Panel绘制的默认布局 (layout) 等信息, 场景与插件文件都存放到统一目 录下等待框架使用时加载。
[0091] 第四步: 运行框架时默认读取场景配置, 框架使用插件前, 根据场景配置中的 plugins字段查找需要的插件预加载到内存。
[0092] 第五步: 框架根据场景配置表中的layout描述, 绘制默认的布局, 将插件的Pa nel加载到指定的Panel位置。
[0093] 得益于自由布局, 由panel呈现的业务模块, 可以自由拖动以满足复杂的设计 场景。
[0094] 复杂的算法逻辑可以存放到 1 ib方法库中, 在设计业务中可以便捷调用。
[0095] 插件系统有更新插件的机制, 比较版本 (vision)差异后触发更新机制, 将最新 的插件文件存放到统一目录下, 更新插件以获取最新的功能, 满足设计功能的 快速迭代体验。
[0096] 最后需要说明的是, 以上实施例仅用以说明本发明的技术方案而非限制技术方 案, 本领域的普通技术人员应当理解, 那些对本发明的技术方案进行修改或者 等同替换, 而不脱离本技术方案的宗旨和范围, 均应涵盖在本发明的权利要求 范围当中。

Claims

权利 要 求 书
[权利要求 1] 一种用于药物设计系统的插件系统, 其特征在于, 包括: 基线管理模块: 基线版本按照固定时间点更新; 配置表: 所述配置表用于配置表示一个场景所有信息的描述。
[权利要求 2] 如权利要求 1所述的用于药物设计系统的插件系统, 其特征在于, 所 述配置表描述了如何将多个插件 Panel组合为一个场景, 其中, 所述 的配置表中有以下关键字段: 名称, 场景的唯一标识; 描述, 场景的描述; 版本, 场景的更新依据; 插件, 场景所需要的插件列表; 布局, 场景需要使用插件进行布局绘制的依据。
[权利要求 3] 如权利要求 1所述的用于药物设计系统的插件系统, 其特征在于, 所 述的插件系统, 其向外暴露多个 panel、 cell和 lib, 其中, 插件系统 提供有接口以实现交互; 所述的插件系统将根据配置表描述的 Panel 组合布局进行绘制。
[权利要求 4] 如权利要求 3所述的用于药物设计系统的插件系统, 其特征在于, 所 述的 Panel由插件系统注入到指定 panel区域后, 由插件系统控制灵活 布局; 其中, 一个 Panel中包含多个 Cell, 在 Cell被指定占位后, 由插件系 统加载具体插件; 其中, Lib只暴露方法。
[权利要求 5] 一种用于药物设计系统的插件系统的生成方法, 其特征在于, 用于生 成如权利要求 1至 4中任一所述的用于药物设计系统的插件系统, 所述 的插件生成方法的步骤为: 步骤 S101: 编写一个或多个单独维护的插件, 启动药物设计系统时, 读取插件声明定义; 步骤 S102: 根据插件声明定义, 将药物设计系统中的控件转换为通用 控件对像; 编写一个场景配置描述用插件如何布局; 步骤 S103: 插件根据配置表加载并渲染插件; 步骤 S104: 插件提供自由布局自由改变 Panel面板位置; 步骤 S105: 返回步骤 S101, 为插件添加新功能并修改版本号; 步骤 S106: 检测插件存在新版本, 下载使用新插件。
[权利要求 6] 如权利要求 5所述的用于药物设计系统的插件系统的生成方法, 其特 征在于, 通过以下的插件生成系统来实现, 所述的插件生成系统包括 读取模块, 所述读取模块在启动药物设计系统时, 用于读取插件的声 明定义; 渲染插件模块, 所述渲染插件模块能够根据配置表加载并渲染插件; 布局模块, 所述布局模块能够自由布局以实现自由改变 Panel面板位 置; 添加模块, 所述添加模块用于为插件添加新功能并修改版本号; 下载模块, 所述下载模块用于检测插件是否存在新版本, 当插件存在 新版本时, 该下载模块启动下载程序来下载新插件, 然后使用新插件
[权利要求 7] 如权利要求 6所述的基于药物设计系统的插件生成系统, 其特征在于 , 还包括: 优化模块, 该优化模块用于将所述插件中的冗余数据和无 效数据进行删除。
[权利要求 8] 一种用于药物设计系统的插件系统的更新方法, 其特征在于, 包括以 下步骤:
(A)、 插件平台被启动后, 获取本地的核心插件对应的更新策略, 检 查基线是否更新;
(B) , 检测出基线有新版本, 则说明当前为可更新状态, 立即检查配 置表版本;
(C)、 判断配置表是否存在版本, 如果是, 则下载最新配置表;
(D)、 读取最新配置表, 检查插件列表; (E)、 插件存在新版本, 更新插件
[权利要求 9] 如权利要求 8所述的用于药物设计系统的插件系统的更新方法, 其特 征在于, 通过以下的插件更新规则来实现, 所述插件更新采用下列的 一个或多个规则: 规则一: 当前已安装插件是否位于可安装的最低版本与最高版本间范 围; 规则二: 当前已安装插件是否属于可安装的随机版本号; 规则三: 当前已安装插件是否属于可安装的忽略版本号。
[权利要求 10] 如权利要求 9所述的用于药物设计系统的插件系统的更新方法, 其特 征在于, 是通过以下的更新系统来实现的, 所述的更新系统应用于插 件宿主, 更新系统包括: 确定模块, 确定待加载的插件的进程, 检查基线是否更新; 判断模块, 判断配置表是否存在版本, 如果是, 则下载最新配置表; 读取模块, 读取最新配置表, 检查插件列表; 运行模块, 插件存在新版本, 更新插件。
PCT/CN2020/096301 2020-06-16 2020-06-16 一种用于药物设计系统的插件系统及其生成方法和更新方法 WO2021103495A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/CN2020/096301 WO2021103495A1 (zh) 2020-06-16 2020-06-16 一种用于药物设计系统的插件系统及其生成方法和更新方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2020/096301 WO2021103495A1 (zh) 2020-06-16 2020-06-16 一种用于药物设计系统的插件系统及其生成方法和更新方法

Publications (1)

Publication Number Publication Date
WO2021103495A1 true WO2021103495A1 (zh) 2021-06-03

Family

ID=76129147

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/096301 WO2021103495A1 (zh) 2020-06-16 2020-06-16 一种用于药物设计系统的插件系统及其生成方法和更新方法

Country Status (1)

Country Link
WO (1) WO2021103495A1 (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102915233A (zh) * 2011-08-03 2013-02-06 腾讯科技(深圳)有限公司 软件程序的基线版本管理方法及系统
CN103218220A (zh) * 2013-02-25 2013-07-24 上海谐宇网络科技有限公司 基于动态可插拔组件的物联网中间件系统
CN106484445A (zh) * 2015-08-27 2017-03-08 阿里巴巴集团控股有限公司 移动终端应用程序的页面展示方法和装置
US20180088915A1 (en) * 2016-09-29 2018-03-29 Ca, Inc. Application-type independent dynamic plug-in evaluation tool
US10162624B1 (en) * 2017-12-15 2018-12-25 Intuit Inc. Web shell for dynamically generated cross-platform applications

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102915233A (zh) * 2011-08-03 2013-02-06 腾讯科技(深圳)有限公司 软件程序的基线版本管理方法及系统
CN103218220A (zh) * 2013-02-25 2013-07-24 上海谐宇网络科技有限公司 基于动态可插拔组件的物联网中间件系统
CN106484445A (zh) * 2015-08-27 2017-03-08 阿里巴巴集团控股有限公司 移动终端应用程序的页面展示方法和装置
US20180088915A1 (en) * 2016-09-29 2018-03-29 Ca, Inc. Application-type independent dynamic plug-in evaluation tool
US10162624B1 (en) * 2017-12-15 2018-12-25 Intuit Inc. Web shell for dynamically generated cross-platform applications

Similar Documents

Publication Publication Date Title
US11099823B2 (en) Systems and methods for transformation of reporting schema
US7917888B2 (en) System and method for building multi-modal and multi-channel applications
US7707563B2 (en) System and method for network-based computing
US11429365B2 (en) Systems and methods for automated retrofitting of customized code objects
US9465590B2 (en) Code generation framework for application program interface for model
CN108027722A (zh) 在编译和部署中动态更新应用
US8381176B1 (en) Software build orchestration framework
US10656971B2 (en) Agile framework for vertical application development and delivery
US20150220308A1 (en) Model-based development
CN111857765A (zh) 用于药物设计系统的插件系统及其生成方法和更新方法
CN111897570A (zh) 一种基于Maven插件的多依赖项文件提取方法及装置
CN114077423A (zh) 基于移动跨平台的机场app开发容器架构
CN109960580A (zh) 一种部署开票服务的方法及系统
US20230058197A1 (en) Distributed software development pipeline for coherent graphical user interface
CN111752581A (zh) 一种分布式系统的升级方法、装置和计算机系统
JP2021131897A (ja) スケジューリング方法、装置、設備、記憶設備、及びプログラム
US10540151B1 (en) Graphical customization of a firmware-provided user interface (UI)
WO2021103495A1 (zh) 一种用于药物设计系统的插件系统及其生成方法和更新方法
CN115145604A (zh) 一种容器化的电力营销系统部署方法
KR20080027293A (ko) 데이터 언어에서 다수 언어들의 관리
CN114995847A (zh) 热更新方法、装置、设备及计算机可读存储介质
CN113778388A (zh) 程序开发方法和装置
CN113590224B (zh) 服务器的检测方法、装置、电子设备及存储介质
US20240054000A1 (en) Container scheduling and deployment method and apparatus, and domain controller system
CN115421785B (zh) 应用程序的移植处理方法、装置和介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20893581

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205 DATED 25/05/2023)

122 Ep: pct application non-entry in european phase

Ref document number: 20893581

Country of ref document: EP

Kind code of ref document: A1