Layout Anchor

→ 제약을 주고싶은 item의 anchor property에 접근해서 제약을 정의하는 방식

Snapkit에서 사용하는 방식 이다.

간결한 작성 방식으로 인한 뛰어난 가독성, type safety를 지원

NSLayoutConstraint

→ NSLayoutContraint class 의 convenience method를 통해 직접 생성하는 방식

NSLayoutConstraint(item: myView, 
				   attribute: .leading, 
                   relatedBy: .equal, 
                   toItem: view, 
                   attribute: .leadingMargin, 
                   multiplier: 1.0, 
                   constant: 0.0).isActive = true)

layout에 관여하지 않는 parameter도 모두 값을 지정해주어야함, 코드가 길어지고 가독성이 떨어지게됨. layout anchor방식과 다르게 특정 제약사항의 조건들을 확인시켜 주지 않아 runtime에 알게됨

Target이 iOS 8 이상이라면 layout anchor api를 사용하도록 권장됨

Visual