问题1:
@implementation MASConstraintMaker
- (id)initWithView:(MAS_VIEW *)view {
self = [super init];
if (!self) return nil;
self.view = view;
self.constraints = NSMutableArray.new;
return self;
}
为何返回id而不是instancetype?
明显是返回MASConstraintMaker,应该用instncetype校验返回的类型吧?
问题2:
/**
* Optional semantic property which has no effect but improves the readability of constraint
*/
// 可选的语义属性,它不起作用,但提高了约束的可读性
- (MASConstraint *)with;
怎么增加可读性了 ?
make.left.equal(view).with.offset(30)
make.left.equal(view).offset(30)
我怎么感觉后者可读性更好呢?多了with不是有点画蛇添足?
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…