iOS 链式编程、函数编程的结合使用

掌握了reactiveCocoa的基本使用后,被响应式编程的思想所震撼,颠覆了我自己的代码写法,于是乎想了解下与之媲美的函数式编程


  • 一个很常见的第三方Masonry,它的美妙之处在于代码的精简及点语法的灵活拼接,例如:
[view1 mas_makeConstraints:^(MASConstraintMaker *make) {
        make.size.mas_equalTo(CGSizeMake(90, 90));
        make.centerX.equalTo(weakSelf.view);
        make.top.width.offset(90);
    }];

无需知道内部实现,关键类MASConstraintMaker也不用创建,只用传入一个需要改变的对象,再加上参数便实现我们的需求,这应该是函数式编程的核心吧(新手不对求轻喷)

  • 我们的目的就是仿照Masonry写出一个灵活、简洁的方法,逼格十足,让调用者从内心发挥赞叹。
  • 编写一个类,可以实现各种基础控件的的创建
UIView *tf = [CreatControls creatControls:^(CreatControls<CreatControlsProtocol> *controls) {
        controls.textfield.placeholder(@"测试3").backColor(backColor).rect(frame3).titleColor(textColor).font(font1);
    }];
  • 文章水平有限,编程理解不深,胡写一通,推荐大家先看下@jieme的文章,简直棒极了,由衷感谢他 文章链接

最后附上demo,可与@jieme的文章对照一起看,希望能帮到你
demo地址
喜欢请给我GitHub一个星星

推荐阅读更多精彩内容