(Block运用思想)何时用代理 protocol 何时用block

来源:互联网 发布:南京大学软件考研难度 编辑:程序博客网 时间:2024/05/23 00:09

1.当程序中,有一系列的接口要对外开放时,最好使用@protocol的方式,因为非常清晰,类似于UITableViewDelegate,UITableViewDataSource

2.当需要动态的去替换某个功能模块的时候,最好使用block  

  1.     例如之前自己封装的一个获取地理位置的工具类。

  2.     使用block还有一个优点就是回调代码块定义在委托对象函数内部,是代码更为紧凑。

  3.     而且我们不需要定义协议,然后遵守协议这些步骤。


下方理解:

实战经验:我们在委托类中的方法先执行,此时不会回调block,只有我们实现block,此时才会回调,也就是说当实现  举例:success(a,b,c,nil) 上面的这个block的时候才会回调回去,例如我们在委托类中先声明一个block,当执行带有block的这个方法的时候,我们把传进来的block用self.block记录,只有我们实现了self.block这个block的时候才会进行回调,记住这里用记录这个词,当我们多次调用这个self.block就会出现多次的回调,返回多次内容。


总的来说什么时候block或者self.block实现,那么就会回调。实现就是block(a,b,c)。里面传进去东西。


学习心得:

试着block  多次  看返回几次。。。

block执行多少次  就给返回多少次   最主要看的是block的执行  而不是拥有block的这个方法的执行。


4 0
原创粉丝点击