美文网首页编程思想
iOS中的链式编程的应用

iOS中的链式编程的应用

作者: 2897275c8a00 | 来源:发表于2017-02-28 13:57 被阅读27次

Copyright © 2017年ZaneWangWang. All rights reserved.

       如果你看到的不是简书原文请点击查看原文

       说到链式编程在iOS中我们首先想到的应该就是masonry框架,示例如下图:

masonry使用

这种打点式的代码风格会使得我们的代码的可读性很好,下边我们就来写一个计算器的例子来剖析一下链式编程的思想.

1.首先创建一个NSobject类别Calculator,并在其中创建Calculator类

.h内容如下:

//

//NSObject+Calculator.h

//Created by iOS on 17/2/28.

//Copyright © 2017年iOS. All rights reserved.

//

#import <Foundation/Foundation.h>

@classCalculator;

typedefvoid(^Mask)(Calculator*calculator);

@interfaceNSObject (Calculator)

//加法

+ (float)calculatorNumber:(Mask)calculator;

@end

@interface Calculator :NSObject

@property(nonatomic,assign)floatvalue;

- (Calculator*(^)(float))add;

- (Calculator*(^)(float))min;

- (Calculator*(^)(float))mul;

- (Calculator*(^)(float))div;

@end

.m内容如下

//

//NSObject+Calculator.m

//Created by iOS on 17/2/28.

//Copyright © 2017年iOS. All rights reserved.

//

#import"NSObject+Calculator.h"

@implementationNSObject (Calculator)

+ (float)calculatorNumber:(Mask)calculator{

Calculator*cal = [[Calculatoralloc]init];

calculator(cal);

return cal.value;

}

@end

@implementationCalculator

-(Calculator*(^)(float))add{

return^(floatvalue){

_value+= value;

returnself;

};

}

-(Calculator*(^)(float))min{

return^(floatvalue){

_value-= value;

returnself;

};

}

-(Calculator*(^)(float))mul{

return^(floatvalue){

_value*= value;

returnself;

};

}

-(Calculator*(^)(float))div{

return^(floatvalue){

_value/= value;

returnself;

};

}

@end

2.测试代码如下:

相关文章

  • iOS-链式编程思想

    在iOS中,链式编程虽然用的不太多,但是,在特定的应用环境下,利用block实现链式编程的话,会大大的提高编程效率...

  • iOS链式编程

    在iOS中,链式编程虽然用的不太多,但是,在特定的应用环境下,利用block实现链式编程的话,会大大的提高编程效率...

  • iOS中的链式编程的应用

    Copyright © 2017年ZaneWangWang. All rights reserved. 如果...

  • 工作iOS技术总结

    链式编程、函数式、面向接口编程思想 iOS 之ReactiveCocoa 链式编程2 WKWebView的缓存处理...

  • ReactiveObjC入门

    ReactiveObjC基础用法 iOS开发三种编程方式(响应式编程、函数编程、链式编程),函数编程最常用,链式编...

  • iOS中的链式编程

    前言 作为iOS开发者,很多人看到这个标题最先想到的可能是Masonry和SnapKit。那么什么是链式编程?为什...

  • iOS中的链式编程

    之前一直没有使用Masonry,最近因为比较闲,就尝试使用了下Masonry,但是Masonry这种和Obje...

  • iOS中的链式编程

    1.什么是链式(函数式)编程? 通过高阶函数以点为连接将多个函数连接在一起完成参数传递和复杂的操作! 例如在Mas...

  • 一、链式编程思想、响应式编程思想和函数式编程

    1. 链式编程思想 链式编程思想的核心就是方法的返回值必须是Block,Masonry是链式编程思想应用的代表。 ...

  • IOS_编程思想_链式编程练习

    在之前的两篇文章中已经简单的介绍了IOS的编程思想,那在此处写一个链式编程的联系来加深对链式编程思想的理解!!! ...

网友评论

    本文标题:iOS中的链式编程的应用

    本文链接:https://www.haomeiwen.com/subject/tdrxgttx.html