前言iOS 社区这两年越来越多底层向 (涉及到汇编 / llvm) 的东西, 关于 工程化 相关的讨论会少一点,底层东西并非不好,只是作为屠龙刀的角色,一般只在特定场景去发挥优化作用。 对于广大 iOS 开发者,工程和业务却是每天需要打交道的地方,拆分业务也属于必不可少的事项,插件化作为解耦手段之一,对于每个公司和团队,方案可能都略有不同。 业界关于此类的文章也较少,经过搜索只发现了一篇 《优酷 iOS 插件化页面架构方案》 ,现结合自己经验理解在此抛砖引玉。效果演示目前暂不提供完整方案代码,后续可考虑把简单 Demo 放出来。 文章应该把思路和关键实现说得比较清楚,要自己实现应该也不太难。 虽然不能 show code ,但有图有真相,可以先看看插件化的实现效果。增加插件直接编写好对应的 plugin.h/plugin.m ,就能无侵入地增加一个新插件和进行逻辑交互:添加插件效果删除插件将要插件的实现文件直接删掉,就能无耦合的拔除插件:删除插件效果插件化是什么要理解插件化,就要先理解 插件 的概念。 稍微区别于 "组件",插件的粒度会更小一些,如果说每一个组件是工程中的某一个模...