Skip to content

The mediator with no regist process to split your iOS Project into multiple project.

Notifications You must be signed in to change notification settings

CandyDeng/CTMediator

Repository files navigation

CTMediator

objective-c:

pod "CTMediator"

swift:

use_frameworks!
pod "CTMediator"

CTMediator helps you to devide your project into multi-project, and use Target-Action pattern to let subprojects to communicate with each other. with no regist process!

you can check demo for more details:

Origin project

Modulized Main Project with CTMediator

Demos

Swift Demo

add private repo before you run demos:

pod repo add PrivatePods https://github.com/ModulizationDemo/PrivatePods.git

remember to run pod install before you run the demo!


Origin project

Modulized Main Project with CTMediator

Demos

Swift Demo

跑demo时先添加私有库:

pod repo add PrivatePods https://github.com/ModulizationDemo/PrivatePods.git

然后就可以pod install


iOS应用架构谈 组件化方案

在现有工程中实施基于CTMediator的组件化方案


本工程其实也是个Demo

Category目录在实际工程中是单独的一个repo,调用者通过依赖category这个repo来完成功能调度。一般来说是每一个业务对应一个category的repo。因此调用者需要调度哪个业务,就依赖哪个业务的category。category这个repo由对应提供服务的业务来维护。

CTMediator目录在实际工程中也是一个单独的repo,仅用于存放中间件。被每一个业务线各自维护的category repo所依赖。

DemoModule目录是实际提供服务的业务,这个在实际工程中也是一个单独的repo。这个repo不被任何人所依赖,这个repo通过target-action来提供被调度的功能,然后由category repo通过runtime调度。


CTMediator helps you to devide your project into multi-project, and use Target-Action pattern to let subprojects to communicate with each other.

you can check demo for more details:

Demo

Swift Demo

About

The mediator with no regist process to split your iOS Project into multiple project.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Objective-C 81.9%
  • Ruby 16.5%
  • Shell 1.6%