CN111290736B - 一种数据处理的方法及装置、电子设备、存储介质 - Google Patents
一种数据处理的方法及装置、电子设备、存储介质 Download PDFInfo
- Publication number
- CN111290736B CN111290736B CN202010054998.9A CN202010054998A CN111290736B CN 111290736 B CN111290736 B CN 111290736B CN 202010054998 A CN202010054998 A CN 202010054998A CN 111290736 B CN111290736 B CN 111290736B
- Authority
- CN
- China
- Prior art keywords
- module
- sub
- shared
- directory
- project
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
- G06F8/24—Object-oriented
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
- G06F8/315—Object-oriented languages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/36—Software reuse
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Stored Programmes (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例提供了一种数据处理的方法及装置、电子设备、存储介质,所述方法包括:在项目工程中,创建共享模块;扫描所述项目工程,并在所述项目工程的子功能模块中,建立共享目录;确定所述共享目录对应的路径信息,并配置在所述共享模块中。通过本申请实施例,实现了自动在不同功能模块之间的数据共享,即保持了在文件结构上的独立,又能够在代码层面上紧密耦合。
Description
技术领域
本申请涉及数据处理技术领域,特别是涉及一种数据处理的方法及装置、电子设备、存储介质。
背景技术
随着安卓(Android)技术的发展,每个安卓应用程序能够集成大量的功能,在应用程序开发的过程中,通常可以从项目工程(Project)中抽离出多个功能模块,最终将多个功能模块打包成Apk(Android application package,安卓应用程序包),集成在安卓应用程序中。
在实际应用中,各个功能模块都是独立的工程,即在文件结构上是独立的,但存在部分功能模块需要调用其他模块的业务代码等数据,即其在代码层面上需要有紧密耦合,而现有的采用手动声明接口类的方式,操作繁琐。
发明内容
鉴于上述问题,提出了以便提供克服上述问题或者至少部分地解决上述问题的一种数据处理的方法及装置、电子设备、存储介质,包括:
一种数据处理的方法,所述方法包括:
在项目工程中,创建共享模块;
扫描所述项目工程,并在所述项目工程的子功能模块中,建立共享目录;
确定所述共享目录对应的路径信息,并配置在所述共享模块中。
可选地,所述在所述项目工程的子功能模块中,建立共享目录的步骤包括:
确定所述共享模块对应的名称信息;
采用所述名称信息,在所述项目工程的子功能模块中,建立共享目录。
可选地,所述采用所述名称信息,在所述项目工程的子功能模块中,建立共享目录的步骤包括:
查找所述项目工程的子功能模块中源代码目录;
在所述源代码目录下,建立与所述源代码目录的主目录同级别且以所述名称信息命名的共享目录。
可选地,所述确定所述共享目录对应的路径信息的步骤包括:
确定所述子功能模块对应的基础路径信息;
采用所述名称信息和所述基础路径信息,生成所述共享目录对应的路径信息。
可选地,还包括:
响应于对所述项目工程中第一子功能模块中第一目标数据的共享操作,将所述第一目标数据移入所述第一子功能模块中共享目录。
可选地,还包括:
在接收到针对所述第一目标数据的修改请求时,获取权限信息;
若所述权限信息为指定权限信息,对所述第一目标数据进行修改。
可选地,还包括:
响应于所述项目工程中第二子功能模块对所述第一目标数据的调用操作,采用所述共享模块中配置的路径信息,调用所述第一目标数据。
可选地,所述第一目标数据为所述第一子功能模块中代码目录下的数据,和/或,所述第一子功能模块中资源目录下的数据。
一种数据处理的装置,所述装置包括:
共享模块创建模块,用于在项目工程中,创建共享模块;
共享目录建立模块,用于扫描所述项目工程,并在所述项目工程的子功能模块中,建立共享目录;
路径信息配置模块,用于确定所述共享目录对应的路径信息,并配置在所述共享模块中。
一种电子设备,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的数据处理的方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上所述的数据处理的方法的步骤。
本申请实施例具有以下优点:
在本申请实施例中,通过在项目工程中,创建共享模块,扫描项目工程,并在项目工程的子功能模块中,建立共享目录,然后确定共享目录对应的路径信息,并配置在共享模块中,实现了自动在不同功能模块之间的数据共享,即保持了在文件结构上的独立,又能够在代码层面上紧密耦合。
附图说明
为了更清楚地说明本申请的技术方案,下面将对本申请的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一实施例提供的一种数据处理的方法的步骤流程图;
图2是本申请一实施例提供的另一种数据处理的方法的步骤流程图;
图3是本申请一实施例提供的另一种数据处理的方法的步骤流程图;
图4a是本申请一实施例提供的一种项目工程的示意图;
图4b是本申请一实施例提供的另一种项目工程的示意图;
图5是本申请一实施例提供的一种数据处理的装置的结构示意图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
参照图1,示出了本申请一实施例提供的一种数据处理的方法的步骤流程图,具体可以包括如下步骤:
步骤101,在项目工程中,创建共享模块;
在安卓应用程序的开发过程中,可以针对安卓应用程序建立一项目工程,并可以从项目工程中抽离出多个子功能模块,每个子功能模块在文件结构上是独立的,即由于不在同一src目录(源代码目录)下,不能访问到其他子功能模块中的代码,打包过程会直接提示找不到相关的代码。
为了实现各个子功能模块在代码层面上紧密耦合,可以在项目工程中创建共享模块,该共享模块可以作为项目工程的一个子模块,与其他子功能模块为兄弟关系,且该共享模块可以为不包含任何代码和资源的空模块工程。
步骤102,扫描所述项目工程,并在所述项目工程的子功能模块中,建立共享目录;
为了确定分散在各个不同的子功能模块中需要进行共享的数据,如代码数据和资源数据,可以设置一个插件,如Gradle插件,该插件在不清楚项目工程会有哪些子功能模块时,可以扫描项目工程下所有的子功能模块。
在确定子功能模块后,为了引用预先建立的共享模块,在项目工程的每个子功能模块中,建立与该共享模块关联的共享目录,共享目录可以为缺省(Default)的目录,当子共享模块需要共享数据时,即共享对外暴露的接口声明代码(路径信息),显式建立该共享目录。
其中,缺省目录是Android工程标准的源码空间,支持java源码以及android资源目录结构,IDE(Integrated Development Environment,集成开发环境)能将该空间识别成Android工程结构的一部分。
步骤103,确定所述共享目录对应的路径信息,并配置在所述共享模块中。
在建立共享目录后,可以确定各个子功能模块中共享目录对应的路径信息,作为sourceSets路径,动态配置在共享模块中,通过sourceSets路径即可以完成共享模块与子功能模块中代码、资源等数据的自动关联,自动收集分散在各个模块中需要共享的接口声明代码。
在本申请实施例中,通过在项目工程中,创建共享模块,扫描项目工程,并在项目工程的子功能模块中,建立共享目录,然后确定共享目录对应的路径信息,并配置在共享模块中,实现了自动在不同功能模块之间的数据共享,即保持了在文件结构上的独立,又能够在代码层面上紧密耦合。
参照图2,示出了本申请一实施例提供的另一种数据处理的方法的步骤流程图,具体可以包括如下步骤:
步骤201,在项目工程中,创建共享模块;
在安卓应用程序的开发过程中,可以针对安卓应用程序建立一项目工程,并可以从项目工程中抽离出多个子功能模块,每个子功能模块在文件结构上是独立的,即由于不在同一src目录(源代码目录)下,是不能访问到其他子功能模块中的代码,打包过程会直接提示找不到相关的代码。
为了实现各个子功能模块在代码层面上紧密耦合,可以在项目工程中创建共享模块,该共享模块可以作为项目工程的一个子模块,与其他子功能模块为兄弟关系,且该共享模块可以为不包含任何代码和资源的空模块工程。
步骤202,扫描所述项目工程;
为了确定分散在各个不同的子功能模块中需要进行共享的数据,如代码数据和资源数据,可以设置一个插件,如Gradle插件,该插件在不清楚项目工程会有哪些子功能模块时,可以扫描项目工程下所有的子功能模块。
步骤203,确定所述共享模块对应的名称信息;
在不同的项目工程中,其可以对共享模块采用不同的命名,则针对该项目工程,可以确定所建立的共享模块对应的名称信息。
步骤204,采用所述名称信息,在所述项目工程的子功能模块中,建立共享目录;
在确定名称信息后,可以在采用名称信息,在项目工程的子功能模块中,建立共享目录,如共享目录采用与共享模块相同的命名,进而保证每个子功能模块中共享目录均采用相同的命名规则,便于后续插件能够自动采用该命名规则生成各个子功能模块中共享目录的路径信息。
在本申请一实施例中,步骤204可以包括如下子步骤:
查找所述项目工程的子功能模块中源代码目录;在所述源代码目录下,建立与所述源代码目录的主目录同级别且以所述名称信息命名的共享目录。
在默认情况下,子功能模块中可以存在src目录(源代码目录),src目录下可以包括main目录(主目录),通过Android Studio新建的子功能模块的数据存在于该子功能模块的src目录/main目录下,具体可以包含代码java目录以及资源res目录,该目录是模块私有的。
基于此,可以查找项目工程的子功能模块中源代码目录,然后可以在源代码目录下,建立与源代码目录的主目录同级别且以名称信息命名的共享目录,即建立与src目录下main目录同级别的共享目录。
步骤205,确定所述子功能模块对应的基础路径信息;
为了拼接出针对共享模块的完整路径信息,则可以针对每个子功能模块,确定基础路径信息,如由于共享目录设置在src目录下,则src目录的路径信息可以为共享目录的基础路径信息。
步骤206,采用所述名称信息和所述基础路径信息,生成所述共享目录对应的路径信息,并配置在所述共享模块中。
在获得基础路径信息后,可以采用名称信息和基础路径信息拼接共享目录对应的路径信息,该路径信息为绝对路径,指向每一个子功能模块内部,然后可以作为sourceSets路径,配置在共享模块中。
在打包期间,插件可以通过该规则自动收集每个子功能模块建立的共享目录中的源代码,并打包到共享模块。
参照图3,示出了本申请一实施例提供的另一种数据处理的方法的步骤流程图,具体可以包括如下步骤:
步骤301,在项目工程中,创建共享模块;
在安卓应用程序的开发过程中,可以针对安卓应用程序建立一项目工程,并可以从项目工程中抽离出多个子功能模块,每个子功能模块在文件结构上是独立的,即由于不在同一src目录(源代码目录)下,是不能访问到其他子功能模块中的代码,打包过程会直接提示找不到相关的代码。
为了实现各个子功能模块在代码层面上紧密耦合,可以在项目工程中创建共享模块,该共享模块可以作为项目工程的一个子模块,与其他子功能模块为兄弟关系,且该共享模块可以为不包含任何代码和资源的空模块工程。
步骤302,扫描所述项目工程,并在所述项目工程的子功能模块中,建立共享目录;
为了确定分散在各个不同的子功能模块中需要进行共享的数据,如代码数据和资源数据,可以设置一个插件,如Gradle插件,该插件在不清楚项目工程会有哪些子功能模块时,可以扫描项目工程下所有的子功能模块。
在确定子功能模块后,为了引用预先建立的共享模块,在项目工程的每个子功能模块中,建立与该共享模块关联的共享目录,共享目录可以为缺省(Default)的目录,当子共享模块需要共享数据时,即共享对外暴露的接口声明代码(路径信息),显式建立该共享目录。
步骤303,确定所述共享目录对应的路径信息,并配置在所述共享模块中;
在建立共享目录后,可以确定各个子功能模块中共享目录对应的路径信息,作为sourceSets路径,动态配置在共享模块中,通过sourceSets路径即可以完成共享模块与子功能模块中代码、资源等数据的自动关联,自动收集分散在各个模块中需要共享的接口声明代码。
步骤304,响应于对所述项目工程中第一子功能模块中第一目标数据的共享操作,将所述第一目标数据移入所述第一子功能模块中共享目录;
其中,第一目标数据可以为第一子功能模块中代码目录(java目录)下的数据,和/或,第一子功能模块中资源目录(res目录)下的数据。
在需要公开第一子功能模块中第一目标数据时,则可以进行共享操作,响应于该共享操作,可以将第一目标数据移入第一子功能模块中共享目录。
在物理结构上,共享目录设置在第一子功能模块的内部,在子模块开发完成或开发过程中,仅需要关注各自模块的内部结构。
需要说明的是,对于上述共享的过程,Gradle插件实现的并不是代码文件同步复制,而是自始至终始终只有一份代码源文件,共享的代码依然保留在模块内部,无需迁移到共享模块,不会造成分开管理的麻烦,同时也不需要手动同步管理,插件使得模块内部结构保留一个本地包结构,告诉插件哪些是对外暴露的代码,哪些是内部不对外暴露的代码。
步骤305,响应于所述项目工程中第二子功能模块对所述第一目标数据的调用操作,采用所述共享模块中配置的路径信息,调用所述第一目标数据。
为了达到能调用其他子功能模块中代码等数据,则可以通过引用共享模块来调用其他子模块共享的代码。具体的,响应于项目工程中第二子功能模块对第一目标数据的调用操作,则可以采用共享模块中配置的路径信息,调用第一子功能模块的共享目录中的第一目标数据。
在本申请一实施例中,该方法还可以包括如下步骤:
在接收到针对所述第一目标数据的修改请求时,获取权限信息;若所述权限信息为指定权限信息,对所述第一目标数据进行修改。
由于将共享目录设置在子功能模块内部,作为私有目录,在接收到针对第一目标数据的修改请求时,可以获取权限信息,然后可以判断若权限信息是否为指定权限信息,若权限信息为非指定权限信息,则拒绝该修改请求,若权限信息为指定权限信息,则对第一目标数据进行修改。
通过该方式,避免了在共享代码与原模块分离后,所有用户都有权限修改同一个代码,需同时维护共享模块内的共享代码以及子模块内的各自代码,且需要在解决与别人的代码冲突后,方可同步共享模块代码以及子模块代码,代码管理上造成混乱,容易漏掉共享代码的同步或被其他人修改。
以下结合图4a和图4b对本申请实施例进行示例性说明,但应当理解,本申请实施例不限于此。
在项目工程中,存在子功能模块modulea和子功能模块moduleb,每个子功能模块下均存在src目录,src目录下存在main目录,main目录下有java目录和res目录,其为IDE建立模块后自动生成。
其中,该main目录为子功能模块工程内src目录下的私有源码空间,也是子功能模块实际上不共享的代码位置。
为了实现对main目录下java目录和res目录中数据的共享,可以在项目工程中建立共享模块common,并在子功能模块modulea和子功能模块moduleb中,分别建立共享目录common,共享目录common下建立有java目录和res目录,其内部结构java、res均为Android工程默认的源码命名,属于引入插件后希望共享的代码空间。
其中,该共享目录common为子功能模块工程内src目录下的私有源码空间,在文件系统目录下,实际存在于子功能模块内的源码目录,也是子模块A实际共享代码位置。
针对子功能模块modulea,如源码文件路径为~/Work/A/Code/ModuleDemo/modulea/src,其为绝对路径位置,默认情况下,该路径下所有源码均为私有的。
在进行共享时,可以将main目录下java目录中的AObjest文件、IServiceA文件,移入共享目录common下java目录中,并将main目录下res目录中的a_strings.xml文件,移入共享目录common下res目录中。
针对子功能模块moduleb,如源码文件路径为~/Work/A/Code/ModuleDemo/moduleb/src,其为绝对路径位置,默认情况下,该路径下所有源码均为私有的。
在进行共享时,将main目录下java目录中的IServiceB文件,移入共享目录common下java目录中,并将main目录下res目录中的b_strings.xml文件,移入共享目录common下res目录中。
如图4a,该视图为Android Studio提供的在Project标签下,切换到ProjectSource Files视图的显示结果,该结构为Project内各模块实际物理位置,为文件系统目录的实际位置,在没有引用插件的情况下,所有从属于各自路径下的源码文件,均属于各自模块下私有源码,其他模块均不能访问
在引用插件后,共享模块common的实际源码文件路径下并不存在任何子功能模块的源代码等数据,如实际源码文件路径为~/Work/A/Code/ModuleDemo/common/src,该共享模块common内无默认main目录,即没有任何源码的空工程模块。
如图4b,该视图为Android Studio提供的在Project标签下,切换到Android视图显示结果,该结构接近于源代码编译后的实际结构,通过引用本方案插件,实际Common工程会向子模块插入缺省的源码空间,在该模块编译后,会拥有子模块需要共享的代码和资源。
在引用插件后,AndroidStudio会要求工程sync(同步),当sync完毕,即可在该视图下看到插件完成的所有工作,不需要开发者做任何的干预,实现自动化管理Common模块代码。
结合图4a和图4b可见,在图4a中,共享模块common并没有任何源代码,在图4b中,在共享模块common的java源码目录下,出现了来自子功能模块modulea:AObject、IServiceA,以及子功能模块moduleb:IServiceB,在共享模块common的res资源目录下,出现了来自子功能模块modulea:a_string.xml,以及来自子功能模块moduleb:b_string.xml。
原本从属于子功能模块modulea的common源码目录下的资源,不再属于子功能模块modulea,转而在实际的打包后,成为了Common模块下源码资源,且原本从属于子功能模块moduleb的common源码目录下的资源,不再属于子功能模块moduleb,转而在实际的打包后,成为了共享模块Common下源码资源。
通过由插件完成同步的工作,插件只改变了编译期源码收集逻辑,向每个子模块建立缺省源码空间,并设置为共享模块Common的自身sourceSets,通过这种插件介入,使得共享的模块代码可以自行管理,不需要开发人员手动迁移任何代码。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请实施例并不受所描述的动作顺序的限制,因为依据本申请实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请实施例所必须的。
参照图5,示出了本申请一实施例提供的一种数据处理的装置的结构示意图,具体可以包括如下模块:
共享模块创建模块501,用于在项目工程中,创建共享模块;
共享目录建立模块502,用于扫描所述项目工程,并在所述项目工程的子功能模块中,建立共享目录;
路径信息配置模块503,用于确定所述共享目录对应的路径信息,并配置在所述共享模块中。
在本申请一实施例中,共享目录建立模块502包括:
名称信息确定子模块,用于确定所述共享模块对应的名称信息;
名称建立目录子模块,用于采用所述名称信息,在所述项目工程的子功能模块中,建立共享目录。
在本申请一实施例中,所述名称建立目录子模块包括:
源代码目录查找单元,用于查找所述项目工程的子功能模块中源代码目录;
同级别建立单元,用于在所述源代码目录下,建立与所述源代码目录的主目录同级别且以所述名称信息命名的共享目录。
在本申请一实施例中,路径信息配置模块503包括:
基础路径信息确定子模块,用于确定所述子功能模块对应的基础路径信息;
路径信息生成子模块,用于采用所述名称信息和所述基础路径信息,生成所述共享目录对应的路径信息。
在本申请一实施例中,还包括:
权限信息获取模块,用于在接收到针对所述第一目标数据的修改请求时,获取权限信息;
数据修改模块,用于若所述权限信息为指定权限信息,对所述第一目标数据进行修改。
在本申请一实施例中,还包括:
数据移入模块,用于响应于对所述项目工程中第一子功能模块中第一目标数据的共享操作,将所述第一目标数据移入所述第一子功能模块中共享目录。
在本申请一实施例中,还包括:
数据调用模块,用于响应于所述项目工程中第二子功能模块对所述第一目标数据的调用操作,采用所述共享模块中配置的路径信息,调用所述第一目标数据。
在本申请一实施例中,所述第一目标数据为所述第一子功能模块中代码目录下的数据,和/或,所述第一子功能模块中资源目录下的数据。
在本申请实施例中,通过在项目工程中,创建共享模块,扫描项目工程,并在项目工程的子功能模块中,建立共享目录,然后确定共享目录对应的路径信息,并配置在共享模块中,实现了自动在不同功能模块之间的数据共享,即保持了在文件结构上的独立,又能够在代码层面上紧密耦合。
本申请一实施例还提供了一种电子设备,可以包括处理器、存储器及存储在存储器上并能够在处理器上运行的计算机程序,计算机程序被处理器执行时实现如上数据处理的方法的步骤。
本申请一实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储计算机程序,计算机程序被处理器执行时实现如上数据处理的方法的步骤。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本申请实施例可提供为方法、装置、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对所提供的一种数据处理的方法及装置、电子设备、存储介质,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (11)
1.一种数据处理的方法,其特征在于,所述方法包括:
在项目工程中,创建共享模块;
扫描所述项目工程,并在所述项目工程的子功能模块中,建立共享目录;其中,所述共享目录设置在所述子功能模块的内部,所述子功能模块中共享的代码保留在模块内部,无需迁移到所述共享模块;
确定所述共享目录对应的路径信息,并作为SourceSets路径配置在所述共享模块中,以通过SourceSets路径完成所述共享模块与所述子功能模块中数据的自动关联,自动收集分散在各个模块中需要共享的接口声明代码。
2.根据权利要求1所述的方法,其特征在于,所述在所述项目工程的子功能模块中,建立共享目录的步骤包括:
确定所述共享模块对应的名称信息;
采用所述名称信息,在所述项目工程的子功能模块中,建立共享目录。
3.根据权利要求2所述的方法,其特征在于,所述采用所述名称信息,在所述项目工程的子功能模块中,建立共享目录的步骤包括:
查找所述项目工程的子功能模块中源代码目录;
在所述源代码目录下,建立与所述源代码目录的主目录同级别且以所述名称信息命名的共享目录。
4.根据权利要求2或3所述的方法,其特征在于,所述确定所述共享目录对应的路径信息的步骤包括:
确定所述子功能模块对应的基础路径信息;
采用所述名称信息和所述基础路径信息,生成所述共享目录对应的路径信息。
5.根据权利要求1所述的方法,其特征在于,还包括:
响应于对所述项目工程中第一子功能模块中第一目标数据的共享操作,将所述第一目标数据移入所述第一子功能模块中共享目录。
6.根据权利要求5所述的方法,其特征在于,还包括:
在接收到针对所述第一目标数据的修改请求时,获取权限信息;
若所述权限信息为指定权限信息,对所述第一目标数据进行修改。
7.根据权利要求5或6所述的方法,其特征在于,还包括:
响应于所述项目工程中第二子功能模块对所述第一目标数据的调用操作,采用所述共享模块中配置的路径信息,调用所述第一目标数据。
8.根据权利要求5所述的方法,其特征在于,所述第一目标数据为所述第一子功能模块中代码目录下的数据,和/或,所述第一子功能模块中资源目录下的数据。
9.一种数据处理的装置,其特征在于,所述装置包括:
共享模块创建模块,用于在项目工程中,创建共享模块;
共享目录建立模块,用于扫描所述项目工程,并在所述项目工程的子功能模块中,建立共享目录;其中,所述共享目录设置在所述子功能模块的内部,所述子功能模块中共享的代码保留在模块内部,无需迁移到所述共享模块;
路径信息配置模块,用于确定所述共享目录对应的路径信息,并作为SourceSets路径配置在所述共享模块中,以通过SourceSets路径完成所述共享模块与所述子功能模块中数据的自动关联,自动收集分散在各个模块中需要共享的接口声明代码。
10.一种电子设备,其特征在于,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至8中任一项所述的数据处理的方法的步骤。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1至8中任一项所述的数据处理的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010054998.9A CN111290736B (zh) | 2020-01-17 | 2020-01-17 | 一种数据处理的方法及装置、电子设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010054998.9A CN111290736B (zh) | 2020-01-17 | 2020-01-17 | 一种数据处理的方法及装置、电子设备、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111290736A CN111290736A (zh) | 2020-06-16 |
CN111290736B true CN111290736B (zh) | 2023-05-12 |
Family
ID=71030807
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010054998.9A Active CN111290736B (zh) | 2020-01-17 | 2020-01-17 | 一种数据处理的方法及装置、电子设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111290736B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116127507B (zh) * | 2022-12-27 | 2024-04-26 | 北京菱云科技有限公司 | 一种多方零拷贝的车辆数字档案构建方法及系统 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109669692A (zh) * | 2018-12-21 | 2019-04-23 | 深圳Tcl新技术有限公司 | 源码共享方法、服务器、计算机可读存储介质及系统 |
-
2020
- 2020-01-17 CN CN202010054998.9A patent/CN111290736B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109669692A (zh) * | 2018-12-21 | 2019-04-23 | 深圳Tcl新技术有限公司 | 源码共享方法、服务器、计算机可读存储介质及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111290736A (zh) | 2020-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111324571B (zh) | 一种容器集群管理方法、装置及系统 | |
CN107291750B (zh) | 一种数据迁移方法和装置 | |
US10452373B2 (en) | System and method for service import/export in a cloud platform environment | |
CN107077388A (zh) | 用于在多租户应用服务器环境中提供端到端生命周期的系统和方法 | |
CN109144478B (zh) | 组件框架系统以及组件框架系统的使用方法 | |
CN106569880B (zh) | 一种Android应用间动态共享资源的方法及系统 | |
CN111309401A (zh) | 一种在Kubernetes中运行多CPU架构服务的方法 | |
US8549129B2 (en) | Live migration method for large-scale IT management systems | |
CN110673923A (zh) | Xwiki系统配置方法、系统及计算机设备 | |
CN107294750B (zh) | 一种云集群能自识别的分布配置管理方法和装置 | |
CN104123126A (zh) | 一种用于生成合并冲突记录列表的方法和装置 | |
CN111897623B (zh) | 一种集群管理方法、装置、设备及存储介质 | |
US20130042239A1 (en) | System and method for use of a virtual assembly builder | |
CN109344619A (zh) | 应用程序的热修复方法和装置 | |
CN110968331A (zh) | 应用程序运行的方法和装置 | |
CN111290736B (zh) | 一种数据处理的方法及装置、电子设备、存储介质 | |
CN116257438A (zh) | 接口测试用例的更新方法及相关设备 | |
CN114153473A (zh) | 模块集成方法、装置、存储介质及电子设备 | |
CN114443226A (zh) | 一种基于kubernetes的IDE应用云上部署方法及系统 | |
CN112416612A (zh) | 服务调用方法、装置、计算机设备和可读存储介质 | |
RU2716742C1 (ru) | Способ и устройство для администрирования объекта администрируемой функции | |
CN104111862A (zh) | 云计算平台中获取虚拟机ip地址方法与系统 | |
CN114996236A (zh) | 融合存储系统的数据处理方法、装置、设备及存储介质 | |
CN115587141A (zh) | 一种数据库同步方法和装置 | |
CN105447012A (zh) | 一种用于数据库的写入互斥方法及装置 |
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 | ||
GR01 | Patent grant |