掌握了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一个星星