• Stars
    star
    3,965
  • Rank 10,555 (Top 0.3 %)
  • Language
    Objective-C
  • License
    Other
  • Created about 8 years ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

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

CTMediator

objective-c:

pod "CTMediator"

swift:

use_frameworks!
pod "CTMediator"

CTMediator helps you to divide 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的组件化方案

CTMediator的Swift应用


本工程其实也是个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 divide 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