美文网首页iOS开发进阶
IOS_编程思想_链式编程练习

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

作者: _CLAY_ | 来源:发表于2017-10-30 12:55 被阅读23次

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


First创建一个Category的分类
NSObject+Sum.h

#import <Foundation/Foundation.h>
#import "SumManager.h"
@interface NSObject (Sum)
//将所有计算的方法放在里面
- (int)BC_MakeSum:(void(^)(SumManager *mgr))block;
@end

NSObject+Sum.m

#import "NSObject+Sum.h"
@implementation NSObject (Sum)
- (int)BC_MakeSum:(void(^)(SumManager *mgr))block {
//    1.创建mgr
    SumManager *mgr = [[SumManager alloc] init];
//    2.调用block
    block(mgr);
//    3.管理者mgr的result属性就有值了
    return mgr.result;
}
@end

Second创建一个SumManager的管理者
SumManager.h

#import <Foundation/Foundation.h>
@interface SumManager : NSObject
@property (nonatomic,assign) int result;
- (SumManager *(^)(int value))add;
@end

SumManager.m

#import "SumManager.h"
@implementation SumManager
- (SumManager *(^)(int value))add {
    return ^(int value) {
        _result += value;
        return self;
    };
}
@end

在ViewController里可以调用使用

#import "ViewController.h"
#import "NSObject+Sum.h"

@implementation ViewController
- (void)viewDidLoad {
    [super viewDidLoad];
   
    int result = [self BC_MakeSum:^(SumManager *mgr) {
        mgr.add(10).add(20);
    }];
//  mgr.add(10).add(20)...
    NSLog(@"现在的结果为:%d",result);
}
@end

相关文章

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

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

  • 链式编程思想

    链式编程思想 链式编程思想

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

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

  • iOS链式编程

    前言 通过对Masonry的学习,我们了解了链式编程的思想。此片文章是使用链式编程的思想做一个计算机,练习一下链式...

  • 工作iOS技术总结

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

  • 链式编程

    最近有时间看了下Masonry的实现原理,大家都知道Masonry就是经典的链式编程思想 链式编程小练习 1.创建...

  • 链式编程思想简介

    链式编程思想简介

  • 编程思想-链式编程

    编程思想-链式编程 链式编程(链式调用)的主要表现是支持点语法结构的代码,代表库可以参照 Masonry 或 Sn...

  • Swift 链式编程思想让你的代码更优雅

    Swift链式编程思想 一、知识小集锦 在介绍链式编程思想之前,我们先了解一下我们所知道的一些编程思想: l面向过...

  • Swift 链式编程思想学习

    Swift链式编程思想 一、知识小集锦 在介绍链式编程思想之前,我们先了解一下我们所知道的一些编程思想: l面向过...

网友评论

    本文标题:IOS_编程思想_链式编程练习

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