iOS block 使用注意
阿神
阿神 2017-04-17 13:48:45
[iOS讨论组]

block 大量使用真的好吗?我觉得是不是应该有个度呢?否则跳来跳去烦死了?
大家有没有一个规范的标准

阿神
阿神

闭关修行中......

全部回复(2)
天蓬老师

block 量级轻又很灵活,当然是很常用的回调方式,但是滥用容易导致代码逻辑集中。
我建议的应用场景是:如果只是回调,没有复用的必要,那么就用 block.

怪我咯

Block 的确很有很多优势,比如同样代码使用 block 替代,大多数情况下,可以减少代码的量。Block 可以降低我们对 delegate 的依赖:在 block 出现以前,我们如果调用一段代码,在一段时间之后它会给我们返回,这时我们就需要用到 delegate 或者 NSNotification, 当然使用 delegate 和 Notification 是没什么问题的,但是使用过 delegate 和 Notification 就会知道,我们需要把与它们相关的代码写的到处都是。使用 block 可以在一定程度上避免这个问题。
本身 block 就是一个普通的 Objective-C 对象,正因为是个对象,所以 block 可以被作为参数传递,也可以作为返回值返回,或者可以用来给变量赋值。
理论上说,我们写的绝大部分代码都可以写成 block 形式。但是,毕竟 block 的语法和我们一般使用的有所不同,太多的使用反而可能造成代码混乱,可读性变差。
我一般的习惯是,涉及 UIAnimation 时会使用,这个大家平时使用的肯定不少。还有就是涉及一些数组的操作会使用,有一些例如 enumerateObjectsUsingBlock 这样的方法,会使操作数组变得非常方便。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号