Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
3.6k views
in Technique[技术] by (71.8m points)

Masonry:为何返回id而不是instancetype?另外with,返回self。为何会增加可读性?

问题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不是有点画蛇添足?


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)
等待大神解答

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...