iOS组件化开发

6 篇文章 0 订阅


为什么要组件化?


    组件和组件之间没有明确的约束;

    组件单独开发、单独测试,不能揉入主项目中开发,测试也可以针对性的测试;

   代码拆分还不足以解决业务之间的代码耦合,为了更好的让拆分出去的业务工程能够独立运行,必须进行组件拆分并且实现组件服务化。



一、创建模块化开发中间层管理类

/*

 根据一个指定操作的URL调用相关操作

 @param url:操作的URL

    url格式:iclap://插件名.调用的操作名?参数名1=参数值1&参数名2=参数值2

 @param completion:完成之后的回调Block

 

 @return

  Mediator_ERROR_TYPE

  Mediator_Result

 */

- (id)performPublicWithUrl:(NSURL *)url completion:(void(^)(id result))completion;


解析url,通过performSelector的方式调用相应的方法,并在方法内处理传参操作



二、服务调用 :通过url的方式

testString :Public://interaction.createNewInteraction?keyID=123    //协定好的规则 interaction类名称;createNewInteraction 方法名  keyID参数1

调用代码如下:

    NSURL *url= [NSURL URLWithString: testString];

    [[DevMediatorManager sharedInstance] performMediatorWithUrl:url completion:^(id result) {

        

    } operation:^(id result) {

        

    }];



三、接收模块处理

创建一个继承模块中间层的类,并按照协议规范类名和方法名

例:

@interface Public_interaction : Public_Base                                  (interaction 类名)


- (id)PublicAction_createNewInteraction:(NSDictionary *)params;  (createNewInteraction 方法名)


在方法内部创建对应的控制器,针对params的参数进行传值.




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值