System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于组件化的APP开发方法及系统技术方案_技高网

一种基于组件化的APP开发方法及系统技术方案

技术编号:40553236 阅读:10 留言:0更新日期:2024-03-05 19:13
本发明专利技术属于APP组件化架构开发技术领域,具体涉及一种基于组件化的APP开发方法及系统:创建新工程;搭建组件化开发框架,包括:构建Base组件层,用于为基础组件层、业务组件层和业务可视化组件层提供底层技术支持;构建基础组件层,用于为各个APP提供通用的业务功能模块;构建业务组件层,业务组件层包括多个业务功能逻辑组件、通信组件和模块管理组件;业务功能逻辑组件用于实现业务功能模块的业务逻辑处理和数据处理;通信组件用于实现各个组件层间的通信;构建业务可视化组件层,用于通过导航显示各个业务功能;开发各层组件。本发明专利技术解决了现有技术中业务逻辑实现部分和业务功能显示部分混淆在一起开发,导致开发效率低的问题。

【技术实现步骤摘要】

本专利技术属于app组件化架构开发,具体涉及一种基于组件化的app开发方法及系统。


技术介绍

1、组件是对数据和方法的简单封装。组件是可组装的、独立的业务单元,具有高内聚、低耦合的特性,是一种比较适中的粒度。比如,对于微服务,一个组件就是由一块一块的小积木组成的有单一功能的组合。

2、现有的工程模块实现过程中,往往由于代码全写在同一个module里,导致代码存在臃肿、耦合度低、复用低、维护困难和开发效率低等多个问题。

3、为了解决上述问题,申请公布号为cn113342317a的中国专利技术专利申请文件中采用以下方法:创建mainapp工程,搭建组件化开发框架,开发动态业务功能组件和开发核心管理组件,其中,搭建组件化开发框架包括:构建动态业务功能组件层,该动态业务功能组件层用于具体业务功能的显示和业务逻辑实现。

4、上述专利申请文件中主要实现了数据与服务的相互独立。但是组件化划分粒度还不够具体,其中,动态业务功能组件层仍然将业务逻辑的实现与业务功能的显示混淆在一起开发,比如登录业务,其他app登录逻辑一致,想要使用该逻辑,由于业务层包含着业务逻辑处理部分与业务功能显示部分,还需要进行拆分掉业务功能显示部分,造成开发效率低的问题。


技术实现思路

1、本专利技术的目的在于提供一种基于组件化的app开发方法及系统,用以解决现有技术中业务逻辑实现部分和业务功能显示部分混淆在一起开发,导致开发效率低的问题。

2、为解决上述技术问题,本专利技术所提供的技术方案以及技术方案对应的有益效果如下:

3、本专利技术的一种基于组件化的app开发方法,包括以下步骤:

4、1)创建新工程;

5、2)搭建组件化开发框架,开发框架包括:base组件层、基础组件层、业务组件层和业务可视化组件层;

6、所述base组件层用于为基础组件层、业务组件层和业务可视化组件层提供底层技术支持;所述基础组件层用于为各个app提供通用的业务功能模块,所述业务功能模块实现具体的业务功能;所述业务组件层包括业务功能逻辑组件、通信组件和模块管理组件;所述业务功能逻辑组件用于实现具体业务功能模块的业务逻辑处理和数据处理;所述通信组件用于实现base组件层、基础组件层、业务组件层和业务可视化组件层间的交互通信;所述模块管理组件用于管理业务组件层内的各个组件,包括管理各个组件的配置信息和环境信息;所述业务可视化组件层用于通过导航显示各个业务功能;

7、3)开发各层组件。

8、上述技术方案的有益效果为:

9、第一方面:通过划分业务组件层,用于实现具体业务功能模块的业务逻辑处理和数据处理,又划分了业务可视化组件层,用于显示各个业务功能,本专利技术将现有技术中包含业务逻辑实现和显示的模块拆分成业务可视化组件层与业务组件层,可以很好的让业务可视化组件层与业务逻辑进行保持相互独立,同时通过通信组件保持联系让业务组件层进行更新业务可视化组件层的显示内容。由此解决了业务逻辑实现部分与业务功能显示部分混淆一起开发导致开发效率低,进一步提高了业务组件层的复用程度。

10、第二方面:本专利技术通过使用通信组件,实现各个层间的通信交互,组件间不能直接调用,代码更便于维护,可间接的降低了组件的bug率。

11、第三方面:组件化设计解决了app工程模块庞大臃肿的问题,基础组件层、业务组件层和业务可视化组件层中均具有多个单独的组件,让每个组件功能比较单一,减少开发耦合性,实现低耦合高内聚,而且各个组件可以重复利用,提高项目开发效率。

12、进一步地,所述开发框架还包括app层,所述app层包括app壳和注册模块,所述app壳用于将基础组件层、业务组件层和业务可视化组件层中app需要使用的组件进行打包;所述注册模块用于配置基础组件层、业务组件层和业务可视化组件层中app需要使用的组件的配置信息;所述配置信息包括组件对应的路径。

13、进一步地,所述业务组件层还包括模块抽象组件,所述模块抽象组件根据业务交互需求用于为业务组件层和业务可视化组件层提供交互接口。

14、进一步地,所述业务组件层还包括跨app通信组件,用于多个app间的交互通信。

15、进一步地,所述基础组件层包括网络组件、ui组件、自定义控件组件、工具类组件、数据库组件、图片组件、日志组件、存储组件和配置组件中至少一种。

16、进一步地,业务功能逻辑组件包括家居控制组件和设备能力组件,所述家居控制组件用于实现对家居设备的控制;所述设备能力用于对设备属性控制。

17、进一步地,业务可视化组件层包括:首页导航、房间导航、场景导航、应用导航和设备控制导航中至少一项。

18、进一步地,所述模块抽象组件通过api接口和/或消息中间事件为业务组件层和业务可视化组件层提供交互接口。

19、进一步地,步骤3)后还包括将基础组件层、业务组件层和业务可视化组件层中组件根据业务功能需要进行打包的步骤。

20、本专利技术还提供一种基于组件化的app开发系统,该系统包括处理器和存储器,所述处理器执行由所述存储器存储的计算机程序,以实现如本专利技术的一种基于组件化的app开发方法并达到与该基于组件化的app开发方法相同的有益效果。

本文档来自技高网...

【技术保护点】

1.一种基于组件化的APP开发方法,其特征在于:包括以下步骤:

2.根据权利要求1所述的基于组件化的APP开发方法,其特征在于:所述开发框架还包括APP层,所述APP层包括APP壳和注册模块,所述APP壳用于将基础组件层、业务组件层和业务可视化组件层中APP需要使用的组件进行打包;所述注册模块用于配置基础组件层、业务组件层和业务可视化组件层中APP需要使用的组件的配置信息;所述配置信息包括组件对应的路径。

3.根据权利要求1或2所述的基于组件化的APP开发方法,其特征在于:所述业务组件层还包括模块抽象组件,所述模块抽象组件根据业务交互需求用于为业务组件层和业务可视化组件层提供交互接口。

4.根据权利要求1所述的基于组件化的APP开发方法,其特征在于:所述业务组件层还包括跨APP通信组件,用于多个APP间的交互通信。

5.根据权利要求1所述的基于组件化的APP开发方法,其特征在于:所述基础组件层包括网络组件、UI组件、自定义控件组件、工具类组件、数据库组件、图片组件、日志组件、存储组件和配置组件中至少一种。

6.根据权利要求1或5所述的基于组件化的APP开发方法,其特征在于:业务功能逻辑组件包括家居控制组件和设备能力组件,所述家居控制组件用于实现对家居设备的控制;所述设备能力用于对设备属性控制。

7.根据权利要求1或5所述的基于组件化的APP开发方法,其特征在于:业务可视化组件层包括:首页导航、房间导航、场景导航、应用导航和设备控制导航中至少一项。

8.根据权利要求3所述的基于组件化的APP开发方法,其特征在于:所述模块抽象组件通过API接口和/或消息中间事件为业务组件层和业务可视化组件层提供交互接口。

9.根据权利要求1所述的基于组件化的APP开发方法,其特征在于:步骤3)后还包括将基础组件层、业务组件层和业务可视化组件层中组件根据业务功能需要进行打包的步骤。

10.一种基于组件化的APP开发系统,其特征在于:该系统包括处理器和存储器,所述处理器执行由所述存储器存储的计算机程序,以实现如权利要求1-9任一项所述的基于组件化的APP开发方法。

...

【技术特征摘要】

1.一种基于组件化的app开发方法,其特征在于:包括以下步骤:

2.根据权利要求1所述的基于组件化的app开发方法,其特征在于:所述开发框架还包括app层,所述app层包括app壳和注册模块,所述app壳用于将基础组件层、业务组件层和业务可视化组件层中app需要使用的组件进行打包;所述注册模块用于配置基础组件层、业务组件层和业务可视化组件层中app需要使用的组件的配置信息;所述配置信息包括组件对应的路径。

3.根据权利要求1或2所述的基于组件化的app开发方法,其特征在于:所述业务组件层还包括模块抽象组件,所述模块抽象组件根据业务交互需求用于为业务组件层和业务可视化组件层提供交互接口。

4.根据权利要求1所述的基于组件化的app开发方法,其特征在于:所述业务组件层还包括跨app通信组件,用于多个app间的交互通信。

5.根据权利要求1所述的基于组件化的app开发方法,其特征在于:所述基础组件层包括网络组件、ui组件、自定义控件组件、工具类组件、数据库组件、图片组件、日志组件、存储...

【专利技术属性】
技术研发人员:叶龙马涛姜红梅田涵朴苏三元赵庆旭何进举王亚光江金峰
申请(专利权)人:河南紫联物联网技术有限公司
类型:发明
国别省市:

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

1