链式编程思想
来源:互联网 发布:招聘python 编辑:程序博客网 时间:2024/05/16 12:10
链式编程
链式编程思想:把要做的事情封装到block,给外界提供一个返回这个Block的方法
链式编程思想方法特点:方法返回值必须是block,block参数:放需要操作的内容,block返回值:方法调用者#
代表:masonry框架
//给NSObject写一个分类,使所有类都可以调用计算器方法#import <Foundation/Foundation.h>#import "CaculatorMaker.h"@interface NSObject (Caculator)// 以后计算都使用这个方法,一调用这个方法就返回结果.+ (int)makeCaculator:(void(^)(CaculatorMaker *))block;@end
#import "NSObject+Caculator.h"#import "CaculatorMaker.h"@implementation NSObject (Caculator)+ (int)makeCaculator:(void (^)(CaculatorMaker *))block{ // 创建计算制造者 CaculatorMaker *maker = [[CaculatorMaker alloc] init]; // 计算 block(maker); return maker.result;}@end
#define ADD@interface CaculatorMaker : NSObject@property (nonatomic, assign) KVO int result;//+- (CaculatorMaker *(^)(int num))add; ADD// *- (CaculatorMaker *(^)(int num))multy;@end
@implementation CaculatorMaker- (CaculatorMaker *(^)(int))multy{ return ^(int num){ _result *= num; return self; };}- (CaculatorMaker * (^)(int num))add{ return ^(int num){ _result += num; return self; };}@end
//外层调用int result = [NSObject makeCaculator:^(CaculatorMaker *maker) { // 把所有的计算代码封装到这里 maker.add(10).add(20); maker.add(30).add(40); maker.multy(3); }]; NSLog(@"%d",result);
0 0
- iOS 链式编程思想
- 链式编程思想
- 探究链式编程思想
- 链式编程思想
- 链式编程思想
- 高逼格的block(链式编程思想 )
- java 编程思想 末端哨兵实现内部链式存储机制
- 几种编程思想(链式编程、响应式编程、函数式编程)
- 链式编程
- 链式编程
- 链式编程
- Masonry链式编程思想的基本思路以及KVO底层的响应式编程
- block的高级用法(二) -- block作为返回值,链式编程思想
- 链式编程-评分控件
- hql链式编程
- 编程中的 链式 结构
- 编程实现链式队列
- oc block链式编程
- 数据库引擎
- Microsoft VBScript 编译器错误 错误原因 代码大全
- k线
- canvas实现擦除动画
- IE双击不能打开没反应只能用管理员权限运行怎么办
- 链式编程思想
- SE for Android 系列之整体概要(一)
- Android Button 大写
- 【旧代码整理】Nodejs的另类用法
- 自定义边缘拖动阴影的颜色
- UVA 1025A Spy in the Metro (简单DP)
- AJAX 跨域请求 - JSONP获取JSON数据
- Android RecyclerView 使用完全解析 体验艺术般的控件
- 常用人脸数据库