iOS组件化从零开始
文章平均质量分 87
iOS组件化是每个业务发展快速的app都需要进行的必要改造,但是整体组件化过程技术点较多且杂乱,学习成本较高,若没有相关经验,做起来不仅费时费力还可能最后没有做得很好,但是相关经验可遇而不可求,现总结出来,帮助大家技术提升。
SE-Valkyrie
不积跬步无以至千里,不积小流无以成江海。
展开
-
iOS组件化(六)-AppDelegate优化
AppDelegate随着我们开发的深入,里面会产生很多的初始化、生命周期处理、推送、通知等方法,这些代码对我们组件化各个独立工程的开发环境搭建有很大的影响,例如:我们单独的业务线可能不需要对生命周期有处理,但是独立开发环境的AppDelegate如果定制化过大,后续可能会产生问题,所以需要一种统一的方式,减少各工程AppDelegate的差异。一、分模块加载AppDelegate方法基于...原创 2018-08-14 11:45:50 · 2561 阅读 · 0 评论 -
iOS组件化(五)-组件间调用
一、什么样的组件需要互相调用组件是有层级之分的,有上下的依赖关系(比如对业务而言的基础库),也有同级的互相接口调用关系(比如不同的上层业务相互提供能力)。在下上的依赖关系下,一般不牵扯调用,依赖即实现代码存在,不需要调用,直接用即可。而同级组件之间为了独立,需要解耦合,则不存在相互的依赖,那么想要其他组件提供能力,该怎么办呢?这就是我们要说的组件间的调用。一、组件间调用方式在开发一...原创 2018-08-06 18:42:32 · 2481 阅读 · 0 评论 -
iOS组件化(四)-代码解耦合
很多的组件化文章通常是教授技术上的经验,但是在实际组件化中,尤其一个老项目进行组件化改造时,最为耗时的却是业务代码的解耦合工作。这部分工作并不高端,由于很多的代码经过不断的改动,并且改动人员水平参差不齐,解耦代码更多的时候是体力活。那么怎么高效的完成这部分无聊的工作,进入下一个高逼格的技术点呢?一、基础代码这部分没什么好说的,前置工作,在前三讲中应该已经做出了我们自己的基础库,之后在解耦过...原创 2018-08-03 17:06:28 · 1268 阅读 · 1 评论 -
iOS组件化(三)-podspec使用详解
本文为博主原创文章,未经博主允许不得转载 上一次,我们尝试建立了自己的私有pod库,但是例子相对简单,这次我们详细的解析一下podspec的使用。一、官方文档地址:首先,官方文档最为官方: https://guides.cocoapods.org/syntax/podspec.html二、spec是什么spec描述了一个pod库的版本。它包括有关应从何处获取源、使用什么文件...原创 2018-08-03 15:35:17 · 26582 阅读 · 3 评论 -
iOS组件化(二)-组件化前期工作
上一次我们讲了为什么组件化,这次我们就开始组件化的前期工作。一、Git库准备工作独立工程git库:存放管理我们独立工程代码spec git库:专门提交我们的私有库spec的git库二、新建工程既然我们要组件化,那么我们首先就是先有相关代码的独立工程,这点不管是基础库,还是未来的业务库,都是如此,区别只在于复杂程度和相关的功能组成上。 对于工程我们没有特殊的设置,默认空白...原创 2018-07-26 16:28:21 · 1824 阅读 · 6 评论 -
iOS组件化(一)-为何做组件化?
我们在做组件化之前,必须要弄清楚,我们为什么要组件化,如果没有明显的优点,或者解决我们的所需,我们没有必要组件化。在app迭代如此快速的情况下,耗费时间精力去做这么一件事情到底值不值得?一、组件化所解决的问题(1)、代码复用编程发展至今,面向对象语言的技术点发展,大多解决的是代码可复用问题,不管是封装、继承、多态,都是解决代码重用的不同解决方案,而组件化也是为了这个目的,将一个业务、一...原创 2018-07-26 14:22:15 · 2436 阅读 · 0 评论