掌桥专利:专业的专利平台
掌桥专利
首页

应用程序的开发方法、装置、电子设备和存储介质

文献发布时间:2024-04-18 19:53:33


应用程序的开发方法、装置、电子设备和存储介质

技术领域

本发明涉及程序开发技术领域,具体涉及一种应用程序的开发方法、装置、电子设备和存储介质。

背景技术

随着科技的进一步发展,现有的应用程序不能满足用户的需求,因此,需要不断开发新的应用程序来满足用户需求。对于已经开发完成的应用程序的部分功能可以移植到新的应用程序中进行应用,从而节约了对于已有功能的开发时间,现有技术中,主要是将已经开发完成的应用程序直接进行复制,然后再对其进行封装操作。然而,当需要对某个功能进行更新迭代的时候,需要对引用该功能的所有应用程序需要逐一进行修改,从而浪费了大量的人力和时间成本。

发明内容

有鉴于此,本发明实施方式提供了一种应用程序的开发方法、装置、电子设备和存储介质,在一定程度上能够在对多个应用程序进行更新时提升应用程序的更新效率。

本发明一方面提供了一种应用程序的开发方法,所述应用程序包括多个业务模块,所述方法包括:将获取的若干个依赖库和若干个所述依赖库的依赖库标识进行关联,并将所述依赖库和所述依赖库标识添加到工具类中;分别将所述应用程序中的业务模块对应的业务模块标识与所述工具类中的依赖库标识进行匹配;若在所述工具类中存在与所述业务模块标识相匹配的目标依赖库标识,则调用所述目标依赖库标识对应的目标依赖库;将多个所述目标依赖库进行耦合,并基于耦合后的结果生成所述应用程序。

在一个实施方式中,所述依赖库包括界面信息和逻辑功能信息,若在所述工具类中存在与所述业务模块标识相匹配的目标依赖库标识,则调用所述目标依赖库标识对应的目标依赖库包括:若所述目标依赖库的界面信息和所述业务模块的界面需求信息一致,且所述目标依赖库的逻辑功能信息和所述业务模块的逻辑功能需求信息一致,则调用所述目标依赖库。

在一个实施方式中,应用程序的开发方法还包括:若所述目标依赖库的界面信息和所述业务模块的界面需求信息不一致或所述目标依赖库的逻辑功能信息和所述业务模块的逻辑功能需求信息不一致,获取所述目标依赖库;将所述目标依赖库的界面信息更改至与所述业务模块的界面需求信息一致的第一目标依赖库;或将将所述依赖库的逻辑功能信息更改至与所述业务模块的逻辑功能需求信息一致的第一目标依赖库;相应的,将至少一个所述目标依赖库和至少一个所述第一目标依赖库进行耦合,并基于耦合后的结果生成所述应用程序。

在一个实施方式中,应用程序的开发方法还包括:若在所述工具类中不存在与所述业务模块相匹配的目标依赖库标识,则基于所述业务模块的需求开发第二目标依赖库;相应的,将至少一个所述目标依赖库和至少一个所述第二目标依赖库进行耦合/将至少一个所述目标依赖库、至少一个所述第一目标依赖库和至少一个所述第二目标依赖库进行耦合,并基于耦合后的结果生成所述应用程序。

在一个实施方式中,应用程序的开发方法还包括:将所述第二目标依赖库和所述第二目标依赖的标识进行关联,并将所述第二目标依赖库和第二目标依赖库标识添加到所述工具类中。

在一个实施方式中,所述应用程序运行的操作系统为Android系统或iOS系统。

本发明另一方面还提供了一种应用程序的开发装置,所述应用程序包括多个业务模块,所述应用程序的开发装置包括:工具类创建单元,将获取的若干个依赖库和若干个所述依赖库的依赖库标识进行关联,并将所述依赖库和所述依赖库标识添加到工具类中;依赖库匹配单元,分别将所述应用程序中的业务模块对应的业务模块标识与所述工具类中的依赖库标识进行匹配;依赖库调用单元,用于若在所述工具类中存在与所述业务模块标识相匹配的目标依赖库标识,则调用所述目标依赖库标识对应的目标依赖库;应用程序生成单元,用于将多个所述目标依赖库进行耦合,并基于耦合后的结果生成所述应用程序。

本发明另一方面还提供了一种电子设备,所述电子设备装置包括处理器和存储器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,实现上述的应用程序的开发方法。

本发明另一方面还提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,所述计算机程序被处理器执行时,实现上述的应用程序的开发方法。

通过将依赖库按照键值对的形式存储至一个工具类中,多个应用程序无需重复引用依赖库,只需要对已经开发完成的依赖库进行调用,解决了在对某个依赖库进行修改时,只需要对该依赖库进行一次修改就可以实现对所有引用该依赖库的应用程序的修复,避免了需要逐个修复应用程序的繁琐步骤,从而在一定程度上能够在对多个应用程序进行更新时提升应用程序的更新效率。

附图说明

通过参考附图会更加清楚的理解本发明的特征和优点,附图是示意性的而不应理解为对本发明进行任何限制,在附图中:

图1示出了现有技术中对多个应用程序引用相同依赖库的示意图;

图2示出了本发明一个实施方式中应用程序的开发方法的流程示意图;

图3示出了本发明一个实施方式中多个应用程序引用相同依赖库的示意图;

图4示出了本发明一个实施方式中应用程序的开发装置示意图;

图5示出了本发明一个实施方式中电子设备的结构示意图。

具体实施方式

为使本发明实施方式的目的、技术方案和优点更加清楚,下面将结合本发明实施方式中的附图,对本发明实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式是本发明一部分实施方式,而不是全部的实施方式。基于本发明中的实施方式,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施方式,都属于本发明保护的范围。

随着用户对产品的需求不断提升,目前市面上的应用APP层出不穷,这些APP中存在相同的页面和应用逻辑,其应用的代码也相同或者相似。然而,每个应用都需要独立开发自己的依赖库,从而浪费了大量的人力成本和时间成本。请参阅图1,现有技术中,对于引用相同的依赖库的应用A和应用B,主要是通过将应用A所使用的依赖库直接复制迁移到应用B中。在依赖库1出现bug的情况下,需要对应用A和应用B中的依赖库1分别进行更改,从而降低了更改的效率。而且,在应用依赖库1的应用程序较多的情况下可能导致忘记修改或修改不统一产生新的bug。因此,需要提出对于依赖库只需要修改一次,就可以实现所有引用该依赖库的应用程序都可以得到修改。

请参阅图2,本申请一个实施方式提供的应用程序的开发方法,所述应用程序包括多个业务模块,该方法可以包括以下多个步骤。

S110:将获取的若干个依赖库和若干个所述依赖库的依赖库标识进行关联,并将所述依赖库和所述依赖库标识添加到工具类中。

在本实施方式中,由于不同的应用app可能存在着相同的页面和功能,为了避免程序的浪费,可以将不同的依赖库存放在一个依赖库集合中。其中,一个依赖库对应于实现一个功能模块,不同的依赖库之间相互独立,互不影响。

在本实施方式中,通过构建一个用于存储依赖库的工具类,以便实现通过该工具类实现对依赖库的调用,而避免了对同一应用使用相同工具类的复制。工具类中可以按照键值对的形式,即“依赖库标识-依赖库”的形式实现对依赖库的存储。请参阅图3,应用A、应用B和应用C均需要引用依赖库1、依赖库2和依赖库3,在现有技术中需要将依赖库1、依赖库2和依赖库3分别复制到应用A、应用B和应用C,然后再和其余的依赖库进行耦合,从而生成相应的应用程序。而在本实施方式中,只需要通过对工具类的调用,即可实现在应用A、应用B和应用C中使用依赖库1、依赖库2和依赖库3。所述依赖库标识可以是是依赖库的名称,也可以是一个没有意义的标记,但不同的依赖库具有不同的依赖库标识。在本实施方式中,可以依赖库标识判断在依赖库中是否存在于待开发的应用的业务模块所需要的逻辑功能和页面相同的依赖库,如果有,直接通过工具类调用该依赖库即可。

S120:分别将所述应用程序中的业务模块对应的业务模块标识与所述工具类中的依赖库标识进行匹配。

在创建完成工具类之后,可以通过业务模块对应的业务模块标识在工具类中查找是否存在与该业务模块标识对应的依赖库标识。若存在相匹配的业务模块标识,说明在之前开发的业务模块中已经存在与本业务模块需求相同的业务模块,因此,无需花费时间重新开发一个与该业务模块相同的业务模块,如果不同的话,则需要对该业务模块进行重新开发。

S130:若在所述工具类中存在与所述业务模块标识相匹配的目标依赖库标识,则调用所述目标依赖库标识对应的目标依赖库。

在本实施方式中,若在所述工具类中存在与所述业务模块标识相匹配的目标依赖库标识,则可以直接对该依赖库进行调用,从而作为本应用程序的一个业务模块。也就是说,本应用程序可以通过对已经开发完成的依赖库进行调用即可实现应用程序中各个业务模块的需求。

S140:将多个所述目标依赖库进行耦合,并基于耦合后的结果生成所述应用程序。

在本实施方式中,对上述实施方式中获取的多个目标依赖库进行耦合,从而可以生成一个新的应用程序。具体的,例如,现需要开发一个应用程序A,包括登录、支付、聊天、退出等业务模块,由于登录、支付、聊天、退出这四个业务模块在工具类中均存在对应的依赖库,因此,只需要对这四个依赖库进行调用,然后再将其耦合在一起,应用程序A即可实现登录、支付、聊天、退出,从而节约了大量的人力成本和时间成本。

请参阅图3,工具类中存储了依赖库1、依赖库2、依赖库3这三个数据库,应用程序A、应用程序B、应用程序C均引用了依赖库1、依赖库2、依赖库3,经检查发现依赖库1出现了bug,需要对依赖库1进行修改,在现有技术中需要对应用程序A、应用程序B、应用程序C中引用的依赖库1分别进行修改,而在本实施方式中,无需分别修改,只需要对工具类中的依赖库1进行一次修改,就可以实现对应用程序A、应用程序B、应用程序C中引用的依赖库1的全部修改,从而节约了修改多个应用程序bug的时间成本和人力成本。

在一个实施方式中,所述依赖库包括界面信息和逻辑功能信息,若在所述工具类中存在与所述业务模块标识相匹配的目标依赖库标识,则调用所述目标依赖库标识对应的目标依赖库包括:若所述目标依赖库的界面信息和所述业务模块的界面需求信息一致,且所述目标依赖库的逻辑功能信息和所述业务模块的逻辑功能需求信息一致,则调用所述目标依赖库。

在本实施方式中,依赖库中包括了业务模块的界面信息和逻辑功能信息,若依赖库中的界面信息和应用程序中的界面需求信息一致,且依赖库中的逻辑功能信息和应用程序中的逻辑功能需求信息一致,那么就可以直接调用该依赖库。具体的,例如,一个依赖库包括了登录的页面和登录的逻辑功能,若和本应用程序的需求相符合,则可以直接调用该依赖库。

在一个实施方式中,应用程序的开发方法还可以包括:若所述目标依赖库的界面信息和所述业务模块的界面需求信息不一致或所述目标依赖库的逻辑功能信息和所述业务模块的逻辑功能需求信息不一致,获取所述目标依赖库;将所述目标依赖库的界面信息更改至与所述业务模块的界面需求信息一致的第一目标依赖库;或将将所述依赖库的逻辑功能信息更改至与所述业务模块的逻辑功能需求信息一致的第一目标依赖库;相应的,将至少一个所述目标依赖库和至少一个所述第一目标依赖库进行耦合,并基于耦合后的结果生成所述应用程序。

在本实施方式中,若某个依赖库实现的逻辑功能或者页面和本应用程序中某个业务模块的需求存在部分重合,那么可以获取该依赖库,并在该依赖库的基础上进行改写成第一目标依赖库,从而避免了写入新的代码程序带来的时间成本和人力成本,最后可以将目标依赖库和第一目标依赖库进行耦合,并基于耦合后的结果生成所述应用程序。

在一个实施方式中,应用程序的开发方法还可以包括:若在所述工具类中不存在与所述业务模块相匹配的目标依赖库标识,则基于所述业务模块的需求开发第二目标依赖库;相应的,将至少一个所述目标依赖库和至少一个所述第二目标依赖库进行耦合/将至少一个所述目标依赖库、至少一个所述第一目标依赖库和至少一个所述第二目标依赖库进行耦合,并基于耦合后的结果生成所述应用程序。

在本实施方式中,某些业务模块实现的页面需求和逻辑功能需求并不能利用已有的依赖库来完成,需要针对该业务模块的需求开发出新的产品作为第二目标依赖库,然后再将其与上述实施方式中所述的目标依赖库和第一目标依赖库中的至少一个进行耦合,并基于耦合后的结果生成所述应用程序。

在一个实施方式中,应用程序的开发方法还可以包括:将所述第二目标依赖库和所述第二目标依赖的标识进行关联,并将所述第二目标依赖库和第二目标依赖库标识添加到所述工具类中。

在本实施方式中,在上述实施方式中产生的基础上,还可以将其存储至工具类中,以便后续需要使用的时候可以直接调用,从而可以节约后续使用到该依赖库的应用程序的开发时间。

在一个实施方式中,应用程序的开发方法还可以包括:所述应用程序运行的操作系统为Android系统或iOS系统。

在本实施方式中提供的应用程序的开发方法,用于实现单独开发应用程序中的各个业务模块。本实施例中所开发的应用程序运行的移动操作系统,可以为Android系统或者iOS系统。

请参阅图4,本申请一个实施方式还提供一种应用程序的开发装置,所述应用程序包括多个业务模块,所述应用程序的开发装置包括:工具类创建单元、依赖库匹配单元、依赖库调用单元、应用程序生成单元。

工具类创建单元,将获取的若干个依赖库和若干个所述依赖库的依赖库标识进行关联,并将所述依赖库和所述依赖库标识添加到工具类中。

依赖库匹配单元,分别将所述应用程序中的业务模块对应的业务模块标识与所述工具类中的依赖库标识进行匹配。

依赖库调用单元,用于若在所述工具类中存在与所述业务模块标识相匹配的目标依赖库标识,则调用所述目标依赖库标识对应的目标依赖库。

应用程序生成单元,用于将多个所述目标依赖库进行耦合,并基于耦合后的结果生成所述应用程序。

关于应用程序的开发装置实现的具体功能和效果,可以参照本说明书其他实施方式对照解释,在此不再赘述。所述目标识别装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。所述各模块可以以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

请参阅图5,本申请一个实施方式还提供一种电子设备,所述电子设备包括处理器和存储器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,实现上述的应用程序的开发方法。

其中,处理器可以为中央处理器(Central Processing Unit,CPU)。处理器还可以为其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。

存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本发明实施方式中的方法对应的程序指令/模块。处理器通过运行存储在存储器中的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及数据处理,即实现上述方法实施方式中的方法。

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

本申请一个实施方式还提供一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,所述计算机程序被处理器执行时,实现上述的应用程序的开发方法。

本领域普通技术人员可以理解实现所述实施方式方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如所述各方法的实施方式的流程。其中,本说明书所提供的各实施方式中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。

应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

本说明书多个实施方式之间,采用递进的方式进行描述。不同的实施方式着重于描述相较于其它实施方式不相同的部分。所属领域技术人员在阅读本说明书之后,可以获知本说明书中的多个实施方式,以及实施方式揭示的多个技术特征,可以进行更多种的组合,为使描述简洁,未对所述实施方式中的各个技术特征所有可能的组合都进行描述。然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。

本说明书中的多个实施方式本身均着重于强调与其他实施方式不同的部分,各实施方式之间可以相互对照解释。所属领域技术人员基于一般的技术常识对本说明书中的多个实施方式的任意组合均涵盖于本说明书的揭示范围内。

以上所述仅为本案的实施方式而已,并不用以限制本案的权利要求保护范围。对于本领域技术人员来说,本案可以有各种更改和变化。凡在本案的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本案的权利要求范围之内。

技术分类

06120116338113