美文网首页
APP 组件化开发

APP 组件化开发

作者: Jagtu | 来源:发表于2018-03-13 17:06 被阅读30次

基于业务逻辑,多个 APP 会调用同一模块,例如预约挂号、医社保查询等,组件化能够更好的实现跨App的代码和功能的复用, 能够更好的共享资源,避免重复造轮子。

而组件化将来必定会出现有多个模块,模块之间会通信,互相调用的情况。

问题1:各模块互相依赖

如何避免相互依赖,实现模块组件独立开发与维护?

Mediator模式,即中间件模式

各个模块直接都不需要再互相依赖,而是仅需要依赖 Mediator 层即可。但是,依赖关系并没有解除,Mediator 依赖了所有模块,而调用者又依赖 Mediator。

采用动态调用方式,去掉依赖

组件仅通过Target-Action暴露可调用接口

iOS基于runtime,Android基于发射机制实现动态调用

每个组件部分

Mediator : 封装动态调用的实现逻辑,也相当于一个基础组件。而各个业务组件,不需要知道Mediator的存在。只有在集成的时候才需要Mediator,实际上这可以只是一个类文件。

对于使用URL方式其他第三方APP调用组件的,也可以经过URL参数转换之后,使用本地APP调用组件的方式。

-  组件化方案中的去model设计

调用方如何知道接收方需要哪些key的参数?调用方如何知道有哪些target可以被调用?

每个组件,重载Mediator,封装好对外提供的接口。(Objective-C 的分类,Java 的继承)

- 动态调度考虑

切点:

以url parse为切点

以实例化target时为切点

以category调度方法为切点

以target下的action为切点

从服务端获取target-action配置列表,审查时检查当前action是否存在要被动态调度跳转的action,如果存在,则跳转到新的target-action

参考:iOS应用架构谈 组件化方案  

相关文章

  • Android组件化和插件化开发

    Android组件化和插件化开发 什么是组件化和插件化? 组件化开发 就是将一个app分成多个模块,每个模块都是一...

  • 一名一线开发对于App架构和组件化的思考

    一名一线开发对于App架构和组件化的思考 一名一线开发对于App架构和组件化的思考

  • Android组件化和插件化开发

    Android组件化和插件化开发 什么是组件化和插件化? 组件化开发就是将一个app分成多个模块,每个模块都是一个...

  • Android组件化开发实践笔记

    一、什么是组件化和插件化?   组件化开发就是将一个app分成多个模块,每个模块都是一个组件(Module),开发...

  • Android插件化(一)

    插件化(一) 组件化和插件化的区别: 组件化是将一个app分成多个模块,每个模块都是一个组件(module),开发...

  • 从零开发一个App

    从零开发一个App 1.什么是组件化和插件化? 组件化开发: 1.1就是将一个app分成多个模块,每个模块都是一个...

  • Android插件化开发探索与思考

    什么是组件化和插件化? 组件化开发就是将一个app分成多个模块,每个模块都是一个组件(Module),开发的过程中...

  • 插件化方式(插桩式)

    组件化与插件化的区别: 组件化开发就是将一个app分成多个模块,每个模块都是一个组件(Module),开发的过程中...

  • Android组件化和插件化开发

    什么是组件化和插件化? 组件化开发就是将一个app分成多个模块,每个模块都是一个组件(Module),开发的过程中...

  • 插件化介绍和原理解析

    什么是插件化 首先我们区分一下组件化和插件化的概念 组件化组件化开发就是将一个app分成多个模块,组件化强调功能拆...

网友评论

      本文标题:APP 组件化开发

      本文链接:https://www.haomeiwen.com/subject/reyzfftx.html