美文网首页
函数式编程

函数式编程

作者: UILabelkell | 来源:发表于2020-02-12 16:00 被阅读0次

    函数式编程:Functional Programming

    1 基本解释:

    函数式编程 是一种思维模式,一种编程思想,一种编程方式,一种编程范式

    2 基本特性:

    不使用可变的变量处理 赋值,循环和其他命令式控制结构去编程:
    好处:
    2.1 函数即不依赖外部的状态也不修改外部的状态:函数调用的结果不依赖调用的时间和空间状态,这样写的代码容易进行推理,不容易出错。这使得单元测试和调试都更容易。

    2.2 线程安全:函数式编程可以帮我们解决这一痛点,每一个纯函数都是线程安全

    时间状态:变量一旦有了状态,它就有可能随着时间而发生变化,时间是最不可预知的因素
    空间状态:如果把一个线程看成一个独立的空间,在程序的世界当中,空间会产生交叉重叠。一个变量如果可以被两个线程同时访问,它的值如果可以在两个空间发生变化,这个变量同样变得很危险

    3 常规关键字

    3.1高阶函数:参数为函数或返回值为函数的函数 //函数式编程就是指这种高度抽象的编程范式

    3.2惰性求值:就是我们常常口语化的“懒加载”,表达式赋值给变量时,并不会马上参与计算求值,是当变量被调用时候才会计算。通过按需加载计算提升性能

    4感悟:(1)函数式编程并不会减少我们的代码量,它改变的只是我们书写代码的方式

    (2) 编程方式表达更接近于自然语言,调用表达可直译(对命名准确性要求高),注重结果。

    - (void)getLastestYZToken:(void (^)(BOOL isSuccess))callBlock//参数是闭包block 自己在平时的开发中“不小心”就会使用函数式编程思想
    {
    
        callBlock(isSuccess);
     }
    

    文章转载https://www.cnblogs.com/someonelikeyou/p/8552262.html

    相关文章

      网友评论

          本文标题:函数式编程

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