zoukankan      html  css  js  c++  java
  • 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框架

    喜欢请赞赏一下啦^_^

    微信赞赏

    支付宝赞赏

  • 相关阅读:
    SpringBoot整合RabbitMQ
    NIO
    eclipse配置maven
    IDEA常用快捷键
    IDEA如何快速查看类中的属性和方法?
    Java之IO流
    JS判断对象是否包含某个属性
    Jquery获取链接请求的参数
    JS中indexOf的用法
    JS驼峰与下划线互转
  • 原文地址:https://www.cnblogs.com/share-iOS/p/8215802.html
Copyright © 2011-2022 走看看