我正在开发一个采用面向服务架构方法的iOS应用程序。 架构的每个模块都将通过协议相互通信。
有一个中心(起点)类,用于初始化模块。该类保留了模块的强大参考。
Central-> Module A
-> Module B
-> Module C
-> …
ModuleA -> id<ModuleC protocol> delegate // this is a just call back
-> id<ModuleB protocol> reference // to use services of ModuleB
ModuleB-> id<ModuleA protocol> reference // to use services of ModuleA
-> id<ModuleC protocol> reference // to use services of ModuleC
..............
Apple docs says,“父母”对象应该保持对其子女的强烈引用,并且孩子应该对父母的弱引用。 我把代表弱了。但是,如果ModuleA和ModuleB之间有相互引用的话,对我来说并不清楚,那就是问题。
编辑:
如果没有持有强引用的Central类,如何继续?