CN109062544A - 一种描述移动app的模块方法及其装置 - Google Patents
一种描述移动app的模块方法及其装置 Download PDFInfo
- Publication number
- CN109062544A CN109062544A CN201810681493.8A CN201810681493A CN109062544A CN 109062544 A CN109062544 A CN 109062544A CN 201810681493 A CN201810681493 A CN 201810681493A CN 109062544 A CN109062544 A CN 109062544A
- Authority
- CN
- China
- Prior art keywords
- module
- app
- configuration information
- mobile app
- metadata
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
- G06F8/22—Procedural
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供一种描述移动APP的模块的方法,其包括如下步骤:S1:将移动APP划分成多个模块;S2:按照通用模块的接口规范进行开发每个模块;S3:利用元数据对模块进行描述;S4:将模块的配置信息配置到APP模块表中;S5:APP的业务层加载模块信息;S6:引擎根据模块配置信息以展示模块;其中,步骤S3进一步包括S31:选取待描述的模块;S32:对模块进行属性设置,以清楚地描述模块的配置信息;S33:利用元数据描述配置信息;其中所述配置信息包括模块编号、模块开发语言、模块图标、模块版本、模块功能类型、是否启用、模块介绍、是否更新。
Description
技术领域
本发明一般涉及移动APP领域,尤其是涉及一种描述移动APP的模块的方法及装置。
背景技术
随着手机的大量普及,越来越多的人通过手机来上网,从而催生了大量APP。通过APP可以进行游戏、购物、营销、交友、办公等。把一切本来需要亲自去指定场所办理的事项都可以迁移到手机APP上进行操作办理,为当事人节省了大量时间和精力,体验比较好。
但是在现有技术中,APP的模块和APP是通过硬编码的方式强耦合在一起。随着业务的不断发展壮大,APP端所承担的功能也越来越重,造成以下几点问题:1)代码量激增引起结构混乱;2)各个模块相互引用且耦合度高;3)无法独立开发或者调试组件代码;4)无法应对组件拔插的要求。进而由此带来的问题是,当模块进行升级和扩展时,需要对各个模块分别进行升级,并且各个模块又相互耦合,造成模块不能复用,不能进行快速升级、扩展和配置。
发明内容
为了解决现有技术的缺陷和问题,本发明提供一种将APP模块通过元数据的方法来进行描述的方法和装置,能够统一对外接口,降低对APP框架的依赖,从而达到对APP进行快速配置、动态扩展,实现APP无感的增量升级。
为了实现上述技术优点,本发明提供如下技术方案:
一种描述移动APP的模块的方法,包括如下步骤:S1:将移动APP划分成多个模块;
S2:按照通用模块的接口规范进行开发每个模块;
S3:利用元数据对模块进行描述;
S4:将模块的配置信息配置到APP模块表中;
S5:APP的业务层加载模块信息;
S6:引擎根据模块配置信息以展示模块;
其中,步骤S3进一步包括
S31:选取待描述的模块;
S32:对模块进行属性设置,以清楚地描述模块的配置信息;
S33:利用元数据描述配置信息;
其中所述配置信息包括模块编号、模块开发语言、模块图标、模块版本、模块功能类型、是否启用、模块介绍、是否更新。
作为上述技术方案的一种改进,其中所述配置信息还包括Android url、IOS url、web url和是否允许匿名用户访问中的至少一个。
作为上述技术方案的一种改进,其中模块开发语言包括HTML5和WEEX中的至少一个。
作为上述技术方案的一种改进,其中所述配置信息还包括自定义扩展,所述自定义扩展包括配置参数、输入参数和输出参数中的至少一个。
作为上述技术方案的一种改进,其中配置参数包括参数名称、参数分类、参数数据类型、参数显示方式、参数值和缺省值。
一种基于描述移动APP的模块的装置,包括以下单元:
划分单元,用于将移动APP划分成多个模块;
开发单元,用于按照通用模块的接口规范进行开发每个模块;
描述单元,用于利用元数据对模块进行描述;
配置单元,用于将模块的配置信息配置到APP模块表中;
加载单元,用于APP的业务层加载模块信息;
显示单元,用于引擎根据模块配置信息以展示模块。
一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现如上述的方法的步骤。
技术效果:
本发明提供一种将APP模块通过元数据的方法来进行描述的方法和装置,能够统一对外接口,降低对APP框架的依赖,从而达到对APP进行快速配置、动态扩展,实现APP无感的增量升级。
附图说明
以下和其他优点和特征将从以下参考附图的实施例的详细描述中得到更充分的理解,附图必须以说明性和非限制性的方式来考虑,其中:
图1为APP开发的一般步骤流程图;
图2为根据本发明的描述移动APP的模块的方法的流程图;
图3为根据本发明的描述移动APP的模块的方法的进一步流程图;
图4为根据本发明的基于描述移动APP的模块的装置;
图5为根据本发明的描述移动APP的模块的具体实施例。
具体实施方式
以下将结合实施例和附图对本发明的构思、具体结构及产生的技术效果进行清楚、完整的描述,以充分地理解本发明的目的、方案和效果。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
应当认识到,本发明的实施例可以由计算机硬件、硬件和软件的组合、或者通过存储在非暂时性计算机可读存储器中的计算机指令来实现或实施。所述方法可以使用标准编程技术-包括配置有计算机程序的非暂时性计算机可读存储介质在计算机程序中实现,其中如此配置的存储介质使得计算机以特定和预定义的方式操作-根据在具体实施例中描述的方法和附图。每个程序可以以高级过程或面向对象的编程语言来实现以与计算机系统通信。然而,若需要,该程序可以以汇编或机器语言实现。在任何情况下,该语言可以是编译或解释的语言。此外,为此目的该程序能够在编程的专用集成电路上运行。
进一步,该方法可以在可操作地连接至合适的任何类型的计算平台中实现,包括但不限于个人电脑、迷你计算机、主框架、工作站、网络或分布式计算环境、单独的或集成的计算机平台、或者与带电粒子工具或其它成像装置通信等等。本发明的各方面可以以存储在非暂时性存储介质或设备上的机器可读代码来实现,无论是可移动的还是集成至计算平台,如硬盘、光学读取和/或写入存储介质、RAM、ROM等,使得其可由可编程计算机读取,当存储介质或设备由计算机读取时可用于配置和操作计算机以执行在此所描述的过程。此外,机器可读代码,或其部分可以通过有线或无线网络传输。当此类媒体包括结合微处理器或其他数据处理器实现上文所述步骤的指令或程序时,本文所述的发明包括这些和其他不同类型的非暂时性计算机可读存储介质。当根据本发明所述的方法和技术编程时,本发明还包括计算机本身。
计算机程序能够应用于输入数据以执行本文所述的功能,从而转换输入数据以生成存储至非易失性存储器的输出数据。输出信息还可以应用于一个或多个输出设备如显示器。在本发明优选的实施例中,转换的数据表示物理和有形的对象,包括显示器上产生的物理和有形对象的特定视觉描绘。
为了使本发明的技术方案更容易理解,在列举一个或多个实施例之前,对几个重要的技术术语做一下介绍。
元数据(Metadata)
元数据(Metadata),又称中介数据、中继数据,为描述数据的数据(data aboutdata),主要是描述数据属性(property)的信息,用来支持如指示存储位置、历史数据、资源查找、文件记录等功能。元数据算是一种电子式目录,为了达到编制目录的目的,必须在描述并收藏数据的内容或特色,进而达成协助数据检索的目的。
元数据(Metadata)是描述其它数据的数据(data about other data),或者说是用于提供某种资源的有关信息的结构数据(structured data)。元数据是描述信息资源或数据等对象的数据,其使用目的在于:识别资源;评价资源;追踪资源在使用过程中的变化;实现简单高效地管理大量网络化数据;实现信息资源的有效发现、查找、一体化组织和对使用资源的有效管理。元数据的基本特点主要有:
a)元数据一经建立,便可共享。元数据的结构和完整性依赖于信息资源的价值和使用环境;元数据的开发与利用环境往往是一个变化的分布式环境;任何一种格式都不可能完全满足不同团体的不同需要;
b)元数据首先是一种编码体系。元数据是用来描述数字化信息资源,特别是网络信息资源的编码体系,这导致了元数据和传统数据编码体系的根本区别;元数据的最为重要的特征和功能是为数字化信息资源建立一种机器可理解框架。
元数据体系构建了电子政务的逻辑框架和基本模型,从而决定了电子政务的功能特征、运行模式和系统运行的总体性能。电子政务的运作都基于元数据来实现。其主要作用有:描述功能、整合功能、控制功能和代理功能。
由于元数据也是数据,因此可以用类似数据的方法在数据库中进行存储和获取。如果提供数据元的组织同时提供描述数据元的元数据,将会使数据元的使用变得准确而高效。用户在使用数据时可以首先查看其元数据以便能够获取自己所需的信息。
模块的独立性度量
功能模块独立性是由内聚性和耦合性两个定性指标来度量的。内聚性是度量一个功能模块内功能强度的一个相对指标。耦合性则用来度量功能模块之间的相互联系的程度。
耦合是软件结构中各功能模块之间相互连接的一种度量,耦合强弱取决于功能模块间接口的复杂程度、进入或访问一个功能模块的点以及通过接口的数据。
耦合有以下几种,他们之间的耦合度由高到低排列:
数据耦合。如一个功能模块访问另一个功能模块,被访问的功能模块的输入和输出都是数据项参数,则这两个功能模块为数据耦合。
非直接耦合。若两个功能模块没有直接关系,他们之间的联系完全是通过主程序的控制和调用来实现的,便称这两个功能模块为非直接耦合,独立性最强。
上面只是对耦合机制进行了一个分类。原则上讲,功能模块化设计总是希望功能模块之间的耦合表现为非直接耦合方式。但是,由于问题所固有的复杂性和空间方面的考虑,有时则要根据实际情况,全面权衡,选用其它类型的耦合。
内聚是从功能角度来度量功能模块内的联系,一个好的内聚功能模块应当恰好做一件事。它描述的是功能模块内的功能联系。
内聚有如下的种类,其内聚度由弱到强排列:
为了更清楚地说明本发明的技术方案,以下为本发明的具体实施例。
如图1所示,图1为APP开发的一般步骤流程图。在开发APP的流程中,主要是包括三个阶段:需求阶段、研发阶段和发布阶段。因此,首先是获取业务需求,只有了解了业务需求才能有目的地去进行研发。
通常,APP开发的一般步骤如下:
根据业务需求将APP配置成一架构,其中所述架构包括内核层、业务层和应用层;
将上述步骤中的内核层设计成库,所述库用于为APP提供公共服务;
根据实际业务需求将上述步骤中的业务层进行配置成多个独立模块,所述多个独立模块能够被调用;
将上述步骤中的应用层进行整合。
如图2所示,图2为描述移动APP模块的方法,其包括如下步骤:
S1:根据实际业务将移动APP划分成多个模块;
S2:按照通用模块的接口规范进行开发每个模块,其中通用模块的接口规范是利用xml和json的数据格式来制定好数据返回的通用参数和格式;
S3:利用元数据对模块进行描述;
S4:将模块的配置信息配置到APP模块表中;
S5:APP的业务层加载模块信息;
S6:引擎根据模块配置信息将模块展示出来。
在研发阶段,根据业务需求APP被划分为多个模块。每一个模块都被赋予不同的功能,以实现相应的需求。由于各个模块的相关性,比如耦合性和内聚性,各个模块的设计与配置要力求简洁,可重复调用,以方便升级。业务需要是指这些,例如,点餐APP包括菜单、下单、支付、活动区和会员区等业务需求。
正是基于上述原因,如图3所示,本发明提供一种描述移动APP的模块的方法中的步骤S3进一步包括如下具体步骤:
S31:选取待描述的模块;
S32:对模块进行属性设置,以清楚地描述模块的配置信息;
S33:利用元数据描述配置信息;
其中所述配置信息包括模块编号、模块功能类别、模块图标、模块版本、模块开发语言、是否启用、模块介绍、是否更新。
在根据实际业务需求进行选取待描述的模块时,优先考虑那些需要经常进行更新、升级和配置的模块,因为这些模块更需要进行优化处理。通过对这些模块进行属性设置,能够清楚地描述模块的配置信息。然后通过元数据的方式将配置信息进行描述,使得模块的属性一目了然,便于配置与使用。
在实施例中,优选地,其中所述配置信息还包括Android url、IOS url、web url、是否允许匿名用户访问。其中Android url表示在Android系统中使用url来读取网络资源。IOS url表示在IOS系统中使用url来读取网络资源。
在实施例中,优选地,其中所述模块功能类别进一步包括公共功能、登录功能、注册功能和框架功能中的至少一个。其中公共功能的功能主要是所有用户头像显示圆形,点击即跳转到详情页面,从详情页面可以看到该用户的所有帖子操作记录、头像和背景图片,点击帖子、文章中的图片是看大图的效果,并支持双指缩放、多图侧滑切换和无限循环。
在实施例中,优选地,其中模块开发方式包括原生、HTML5和WEEX中的至少一个。其中HTML5是万维网的核心语言,其是标准通用标记语言下的一个应用超文本标记语言(HTML)的第五次重大修改的版本。WEEX是一种开发语言,其能够完美兼顾性能与动态性,让移动开发者通过简捷的前端语法写出Native级别的性能体验,并支持iOS、安卓、YunOS及Web等多端部署。
在实施例中,优选地,其中所述配置信息还包括自定义扩展,所述自定义扩展包括配置参数、输入参数和输出参数。
同样地,在实施例中,优选地,其中配置参数包括参数名称、参数分类、参数数据类型、参数显示方式、参数值和缺省值。
同样地,在实施例中,优选地,其中输入参数包括输入参数名称、输入参数分类、输入参数数据类型、输入参数显示方式、输入参数值和输入缺省值。
在实施例中,优选地,其中输出参数包括输出参数名称、输出参数分类、输出参数数据类型、输出参数显示方式、输出参数值和输出缺省值。
如图4所示,图4为根据本发明的基于描述移动APP的模块的方法的装置,其包括以下单元:
划分单元,用于将移动APP划分成多个模块;
开发单元,用于按照通用模块的接口规范进行开发每个模块;
描述单元,用于利用元数据对模块进行描述;
配置单元,用于将模块的配置信息配置到APP模块表中;
加载单元,用于APP的业务层加载模块信息;
显示单元,用于引擎根据模块配置信息以展示模块。
在本实施例中,优选地,选取单元可以是筛选模块,用于从多个模块中选择一个或多个待描述的模块。选取单元可以设置成将一个或多个模块按照一定的次序排列或/和按照搜索条件进行排列。
在本实施例中,优选地,属性设置单元通过命令语句来设置待描述的模块属性信息。
在本实施例中,优选地,配置单元通过元数据的方式对模块进行配置,配置的信息包括模块编号、模块类别、模块图标、模块版本、模块开发方式、是否启用、模块介绍、是否更新。
如图5所示,图5为根据本发明的描述移动APP的模块的具体实施例。
本发明还提供一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现如上述的方法的步骤。
显然,上述实施例仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。
Claims (7)
1.一种描述移动APP的模块的方法,其特征在于,包括如下步骤:
S1:将移动APP划分成多个模块;
S2:按照通用模块的接口规范进行开发每个模块;
S3:利用元数据对模块进行描述;
S4:将模块的配置信息配置到APP模块表中;
S5:APP的业务层加载模块信息;
S6:引擎根据模块配置信息以展示模块;
其中,步骤S3进一步包括
S31:选取待描述的模块;
S32:对模块进行属性设置,以清楚地描述模块的配置信息;
S33:利用元数据描述配置信息;
其中所述配置信息包括模块编号、模块开发语言、模块图标、模块版本、模块功能类型、是否启用、模块介绍、是否更新。
2.根据权利要求1所述的描述移动APP的模块的方法,其特征在于,其中所述配置信息还包括Android url、IOS url、web url或是否允许匿名用户访问中的至少一个。
3.根据权利要求1所述的描述移动APP的模块的方法,其特征在于,其中模块开发语言包括HTML5和WEEX中的至少一个。
4.根据权利要求1所述的描述移动APP的模块的方法,其特征在于,其中所述配置信息还包括自定义扩展,所述自定义扩展至少包括配置参数、输入参数和输出参数中的一个。
5.根据权利要求4所述的描述移动APP的模块的方法,其特征在于,其中配置参数包括参数名称、参数分类、参数数据类型、参数显示方式、参数值和缺省值。
6.一种基于描述移动APP的模块的装置,其特征在于,包括以下单元:
划分单元,用于将移动APP划分成多个模块;
开发单元,用于按照通用模块的接口规范进行开发每个模块;
描述单元,用于利用元数据对模块进行描述;
配置单元,用于将模块的配置信息配置到APP模块表中;
加载单元,用于APP的业务层加载模块信息;
显示单元,用于引擎根据模块配置信息以展示模块。
7.一种计算机可读存储介质,其上存储有计算机指令,其特征在于该指令被处理器执行时实现如权利要求1至5中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810681493.8A CN109062544A (zh) | 2018-06-27 | 2018-06-27 | 一种描述移动app的模块方法及其装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810681493.8A CN109062544A (zh) | 2018-06-27 | 2018-06-27 | 一种描述移动app的模块方法及其装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109062544A true CN109062544A (zh) | 2018-12-21 |
Family
ID=64818005
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810681493.8A Pending CN109062544A (zh) | 2018-06-27 | 2018-06-27 | 一种描述移动app的模块方法及其装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109062544A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115794214A (zh) * | 2023-02-09 | 2023-03-14 | 中邮消费金融有限公司 | 应用模块元数据管理方法、设备、存储介质及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100199271A1 (en) * | 2009-01-30 | 2010-08-05 | Canon Kabushiki Kaisha | Electronic apparatus, updating method of software and storage medium storing computer program |
CN105183458A (zh) * | 2015-08-14 | 2015-12-23 | 深圳联友科技有限公司 | 一种软件平台开发方法及装置 |
CN106383717A (zh) * | 2016-09-29 | 2017-02-08 | 上海宝尊电子商务有限公司 | 基于元数据配置的流程化的云服务电商平台及方法 |
-
2018
- 2018-06-27 CN CN201810681493.8A patent/CN109062544A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100199271A1 (en) * | 2009-01-30 | 2010-08-05 | Canon Kabushiki Kaisha | Electronic apparatus, updating method of software and storage medium storing computer program |
CN105183458A (zh) * | 2015-08-14 | 2015-12-23 | 深圳联友科技有限公司 | 一种软件平台开发方法及装置 |
CN106383717A (zh) * | 2016-09-29 | 2017-02-08 | 上海宝尊电子商务有限公司 | 基于元数据配置的流程化的云服务电商平台及方法 |
Non-Patent Citations (2)
Title |
---|
中国地质环境监测院: "《地质灾害防治信息化建设理论与技术方法》", 30 June 2016 * |
玄学酱: "App 组件化/模块化之路——构建开发架构思路", 《HTTPS://DEVELOPER.ALIYUN.COM/ARTICLE/179535》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115794214A (zh) * | 2023-02-09 | 2023-03-14 | 中邮消费金融有限公司 | 应用模块元数据管理方法、设备、存储介质及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10929116B2 (en) | Generation of dynamic software models using input mapping with feature definitions | |
CN109074549A (zh) | 具有嵌入式工作流设计器的应用 | |
CN107025037B (zh) | 一种智能设备的控制方法及装置 | |
EP3365813A1 (en) | Display of dynamic contextual pivot grid analytics | |
CN109948077A (zh) | 用户行为数据采集方法、装置、设备和计算机存储介质 | |
JP2012523644A (ja) | Cpiシミュレーション・システムのフローシートを有するスプレッドシート・ユーザ・インターフェースの利用 | |
US20130116987A1 (en) | Bidomain simulator | |
CN107305527B (zh) | 代码文件的处理方法和装置 | |
CN104731606B (zh) | 基于识别抓取技术实现企业应用集成管理的系统及方法 | |
CN108664386A (zh) | 一种自动化测试方法和平台 | |
CN108459792A (zh) | 一种流量切换方法、装置、及计算机设备 | |
CN106776314A (zh) | 一种测试系统 | |
CN113535135B (zh) | 软件开发方法、装置、计算机设备和存储介质 | |
CN111177562B (zh) | 一种目标对象的推荐排序处理方法、装置及服务器 | |
CN109284488A (zh) | 基于本地存储修改前端表格列数据的方法、装置及介质 | |
Bayer et al. | Design and development of a web-based EPANET model catalogue and execution environment | |
CN114185874A (zh) | 一种基于大数据的建模方法、装置、开发框架及设备 | |
CN112825038A (zh) | 基于通用组件语言规范的可视化页面制作方法和相关产品 | |
CN109062544A (zh) | 一种描述移动app的模块方法及其装置 | |
Rocha Silva et al. | Ensuring the consistency between user requirements and graphical user interfaces: A behavior-based automated approach | |
Shrivastava | Learning Salesforce Einstein | |
US20170308379A1 (en) | Evaluating documentation coverage | |
CN105824684B (zh) | 一种多模式大数据软件模拟器的实现方法 | |
Noori et al. | UI Performance Comparison of Jetpack Compose and XML in Native Android Applications | |
Batarseh et al. | Capturing simulation tool and application domain knowledge for automating simulation model creation |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181221 |
|
RJ01 | Rejection of invention patent application after publication |