使用CocoaPods可以很方便地引入AYDispatcher。Podfile添加AYDispatcher的依赖。
pod "AYDispatcher"
AYDispatcher用于解决在多模块开发时,接口调度的解决方案。详细使用方案可以查看Example示例。
当多人合作时,或者需要模块复用时,采用CocoaPods作为模块引用方案是比较方便简单的。在这个Example中,项目结如下:
Example
└──Modules
└──Api
└──ModuleA
└──ModuleB
- Api存放ModuleA和ModuleB需要对外暴露的接口
- ModuleA和ModuleB完全不暴露任何头文件,但实现Api上对外暴露的接口
- Example引用ModuleA、ModuleB、Api,只可以使用Api中的内容(因为ModuleA和ModuleB没有暴露头文件)
在这种结构下,各个模块几乎彻底隔离开发,因此不需要再关注子模块的实现细节。由于现在仅暴露了Api的接口,并没有暴露接口的实现,模块间如果存在互相调用的话,也会带来引用的问题。为了简化种模块之间的调用问题,可以使用AYDispatcher轻松解耦。
AYDispatcher is available under the MIT license. See the LICENSE file for more info.