iOS进阶(一)之组件化开发

背景:15人左右ios团队,共同开发一个系列的app,有一些功能组件是共用的。需要节省维护成本,保持代码同步。

什么是公共组件

在进行组件化开发的过程中,刚开始很容易弄混淆,以为只要是完全一样的代码,都做成公共组件,这其实是不对的,所谓工具组件,是独立于业务逻辑而存在的,无论采用app采用了什么样的底层框架,公共组件都能够做到无缝迁移,这一点我们可以参考gitHub上知名的一些pod库,而且组件是比较稳定的,迭代周期不是很快,如果很快的话,使用组件就不是太好了。

如何开展组件化

遵循由易到难循序渐进的原则。
最开始可以制作只有.h,.m文件的组件。我们这边使用了cocoapods集成工具,对cocoapods不太了解的小伙伴可以看看cocoapodsGuide。另外由于是公司行为,所以代码是放在公司的git代码仓库里的。
思路如下: 建立索引仓库A.git 里面保存所有组件仓库的版本号等版本信息,仓库地址。使用的时候会首先将索引库clone到本地,然手使用的时候根据podfile里的组件名字,版本信息等直行pod install 操作,把我们的组件clone 下来。另外通过权限管理,只让相关责任人进行维护,责任到人,减少代码杂乱差的可能。
1),建立索引库,参考博客如下:使用Cocoapods创建私有podspec
2),建立一个简单的组件代码仓库 ,参考博客如下:如何制作第一个Cocaopod

注: 刚开始最好是只有.h ,.m文件,激发学习热情

通过上面的两个步骤,我们基本上可以制作简单的cocoapod了,但是如何才能在最短的时间学习制作复杂的cocoapod呢,主要留两个途径。一,参考cocoapodGuide网站,二,参考gitHub上制作成功的cocoaPod。难点主要就是在.podSpec文件的配置上。我们团队也是通过这两个途径,有易到难,循序渐进的进行组件化开发的,受益良多。

另外,在后续的开发中,我们发现git submodule 也是可以进行组件化的,这一块没有进行深入的研究,感兴趣的小伙伴可以看看哦。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值