美文网首页iOS开发小知识点积累移动开发iOS Developer
某商城组件化方案与我部门方案对比

某商城组件化方案与我部门方案对比

作者: 王方帅 | 来源:发表于2017-04-17 09:22 被阅读102次

某商城方案:

1,在官网上申请组件开发,提交审核
2,商城架构组审批通过后自动创建git仓库并分配给组件创建人,自动创建基于cocoapods带demo的私有库文件,创建的工程中自动加入Router的路由库,podspec配置信息,一些基础组件库及页面容器(h5容器,viewController容器,做一些公用的基础服务)
3,组件创建人可以添加erp共同开发组件,由于组件自带example,可以独立调试,组件中可以直接用Router调用其他组件(个人感觉调用时需要cocoapods进行组件库引入)
4,组件独立调试完毕后接入商城主app进行集成测试,其间如果发现有UI需要调整或集成中有bug需要组件修改后重新打包再次接入商城主app进行测试(较为耗时,是否可直接debug未可知)
5,测试完毕提交组件库给架构组审核,审核通过后其他组件或主app可以通过组件名,提供的参数进行url调用或native调用
6,商城中对各模块,页面容器进行了解耦,didFinishLaunching也进行了解耦,组件集成中需要指定在didFinishLaunching时需要进行的初始化操作。

我部门方案:
1,创建新的git仓库,或添加到一个已有的git仓库(同一类型的组件)
2,手动用cocoa pods创建带demo的私有库文件,podspec需要自己修改(优化点:可以创建一个模板,手动替换后再修改),不带Router的路由库
3,组件带example,可以独立调试,要引入其他组件需要用cocoapods手动导入并pod update(优化点:可以做一个带基础组件库的podfile模板)
4,组件独立测试完毕后接入主app进行集成测试,其间发现有UI需要调整或集成中发现bug时可以手动开启一下集成调试模式(即注掉podfile中的常规组件引入方式,将组件库文件夹整体拖入到工程中,不勾选“Copy items if needed”),这时候可以直接修改文件及运行debug调试
5,集成测试完后,重新打包组件库,打tag,在主工程中用cocoapods来导入组件
6,目前我部门中是新加功能尝试解耦组件,模块还没有解耦,新app准备模块解耦,分git库,didFinishLaunching也可以解耦处理

参考组件化方案:https://casatwy.com/iOS-Modulization.html

路由方案对比
1,OpenURL 蘑菇街
需要提前注册url,可能要缓存响应的对象,占用内存
2,CTMediator 安居客,百联
用mediator和target-action模式进行动态调用,可以提供给外界组件调用的接口写在category中,用到时才缓存相应的对象,用完可选择释放,调用时需要的参数根据方法名可知
3,某商城Router
虽然采用url类似的接口形式(router://ProductModule/showProduct?pid=1&sid=2),但是内部实现要比蘑菇街好,也是用到时才创建对象,内部也是runtime动态调用,需维护一个配置表,类似CTMediator的category方式,参数需看文档才可知

相关文章

  • 某商城组件化方案与我部门方案对比

    某商城方案: 1,在官网上申请组件开发,提交审核2,商城架构组审批通过后自动创建git仓库并分配给组件创建人,自动...

  • iOS组件化方案

    iOS组件化方案 iOS组件化方案

  • 组件化方案对比

    目前iOS组件化方案主要有三种; URL Scheme Protocol Class Target Action ...

  • iOS 组件化方案探索

    组件化方案相关链接: 一、Limboy的组件化方案: 原文1 原文2二、Casa的组件化方案: 原文

  • iOS组件化方案对比

    背景 随着公司业务的不断发展,项目的功能越来越复杂,各个业务代码耦合也越来越多,代码量也是急剧增加,传统的`MVC...

  • Android 组件化方案对比

    为什么要组件化 在项目中,主要按包进行业务逻辑划分,并不存在模块组件的概念,各业务模块存在直接回调(如图2所示),...

  • 组件化方案

    组件化方案引用 在现有工程中实施基于CTMediator的组件化方案 iOS组件化实践(一):简介 iOS组件化实...

  • iOS组件化文章汇总

    iOS应用架构谈 组件化方案 APP组件化之路 我所理解的组件化之路 iOS 组件化方案探索 围观神仙打架,反革命...

  • 组件化改造-从零开始

    1 ,抽分基础资源 2 ,基础库的设计 3 ,组件接口 4 ,组件拆分 5 ,路由设计 对比了几家组件化方案,还是...

  • 07 CTMediator iOS组件化方案

    关于iOS组件化方案在Casa的iOS应用架构谈 组件化方案写得已经很清楚了。方案本身并不难,CTMediator...

网友评论

    本文标题:某商城组件化方案与我部门方案对比

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