iOS

一、前言

Block使用场景

二、编程思想

前沿:面对需求,往往需要可以快速实现需求,在一过程,就是编程思想。

2.1 面向过程

    处理事物以过程为核心,一步一步的实现。

2.2 面向对象

    万物皆对象

2.3 链式编程思想

    是将多个操作(多行代码)通过点号(.)链接在一起成为一句代码,使代码可读性好。Eg:a(1).b(2).c(3)

  •     链式编程特点:方法的返回值是block,block必须有返回值(本身对象),block参数(需要操作的值)
  •     代表:masonry框架

2.4 响应式编程思想

    不需要考虑调用顺序,只需要考虑结果,类似于蝴蝶效应,产生一个事件,回影响很多东西,这些事件像流一样的传播出去,然后影响结果,万物皆是流

  •     代表:KVO
  •     联系:  KVO的实现原理  

2.5 函数式编程思想

    是把操作尽量写成一系列嵌套的函数或者方法调用。

  •     函数式编程思想本质:就是往方法中传入Block,方法中嵌套Block调用,把代码聚合起来管理
  •     函数式编程特点:每个方法必须有返回值(本身对象),把函数或者Block当作参数,block参数(需要操作的值)block返回值(操作结果).
  • 代表:ReactiveCocoa

    练习三:用函数式编程实现.写一个加法计算器,并且加法计算器自带判断是否等于某个值.

三、ReactiveCocoa编程思想

    ReactiveCocoa结合了几种编程风格:

    函数式编程(Functional Programming)

    响应式编程(Reactive Programming)

    So,有描述ReactiveCocoa为函数响应式编程(FRP)框架.

    After this,使用RAC解决问题,就不需要考虑调用顺序,直接考虑结果,把每一次操作都写成一系列嵌套的方法中,使代码高聚合,方便管理。

四、如何导入ReactiveCocoa框架

喜欢请赞赏一下啦^_^

微信赞赏

支付宝赞赏

原文地址:https://www.cnblogs.com/share-iOS/p/8215802.html