BlocksKit 对 oc语言的功能层、UI层进行了大量的适配,使得oc能够复合函数式编程的风格;

是oc语言的函数式编程风格改造;

将函数式风格的BlocksKit API解释为原生的功能调用;

对系统API的block方式调用的高度封装,

4、BlocksKit目录结构

BlocksKit代码存放在4个目录中分别是Core、DynamicDelegate、MessageUI、UIKit。其中:

Core 存放Foundation Kit相关的Block category

DynamicDelegate动态代理(一种事件转发机制)相关代码

MessageUI 存放MessageUI相关的Block category

UIKit 存放UIKit相关的Block category

5、Core相关代码分析

Core文件夹下面的代码可以分为如下几个部分:

1、容器相关(NSArray、NSDictionary、NSSet、NSIndexSet、NSMutableArray、NSMutableDictionary、NSMutableSet、NSMutableIndexSet)

2、关联对象相关

3、逻辑执行相关

4、KVO相关

5、定时器相关

---------------------

作者:xiaoxiaobukuang

来源:CSDN

原文:https://blog.csdn.net/xiaoxiaobukuang/article/details/51752273

版权声明:本文为博主原创文章,转载请附上博文链接!

最新文章

  1. Oracle监控用户索引使用情况,删除无用索引
  2. 1、怎样设置C#OpenFileDialog(文件选择窗体)的指定路径、文件格式等属性(设置打开默认路径、文件格式、窗体显示文本)
  3. 解决“只能通过Chrome网上应用商店安装该程序”的方法
  4. 深入Java核心 Java中多态的实现机制(1)
  5. R中一切都是vector
  6. ZOJ 2112 Dynamic Rankings(动态区间第 k 大+块状链表)
  7. Mysql group by 排序问题
  8. IE8-模拟script onerror
  9. NLP基本任务-nltk_data文本分割
  10. 随便看看My97DatePicker源码J方法
  11. Node.js中的ORM
  12. scala中的call-by-name和call-by-value
  13. C# 实现关闭按钮隐藏窗体而不退出
  14. linux清理僵尸进程
  15. 2016-09-06 J2EE基础知识之不知
  16. 1632: [Usaco2007 Feb]Lilypad Pond
  17. TCP/IP笔记(七)TCP详解
  18. Netty的并发编程实践3:CAS指令和原子类
  19. 微信小程序onlaunch异步,首页onLoad先执行?
  20. CF 991

热门文章

  1. thinkphp的路径问题
  2. 第七节:Asp.Net Core内置日志和整合NLog(未完)
  3. netcore3.0 webapi集成Swagger 5.0,Swagger使用
  4. Codeforces Round #588 (Div. 1)
  5. 【题解】Editor [HDU4699]
  6. ES7.3.0配置
  7. Linux学习笔记之LVM基本应用,扩展及缩减实现
  8. 带入gRPC:分布式链路追踪 gRPC + Opentracing + Zipkin
  9. spring cloud gateway 深入了解 - Predicate
  10. SpringBoot构建RESTful API