AutoLayout
UI 요소를 동적으로 정의하는 시스템자동으로 조정제약조건(Constraints)을 사용해 뷰 간의 관계를 정의위치와 크기가 필수iOS Layout 시스템의 종류
frame-based layout : 직관적이지만 디바이스별 view의 frame정보를 일일이 지정해야하는 번거로움 존재
Autoresizing Mask : super view의 frame 변경에 따라 view의 frame이 변경되는 방식을 정의.
view.translatesAutoresizingMaskIntoConstraints = false(autoresizing mask와 Auto Layout의 혼합사용 방지)snapkit을 사용하면 LayoutConstraintItem 파일에 선언되어 있기 때문에 viewController에 따로 작성해주지 않아도 됨
AutoLayout 방정식

위 처럼 제약조건(Constraint)를 통해 두 view 사이의 관계는 일차 방정식으로 정의될 수 있다.
내 생각대로 쉽게 해석해보면, 기준을 잡은 view를 기준으로 다른 view와의 관계(거리, 간격 등)를 생각하면 될 것 같다.
iOS의 좌표 시스템
iOS에서의 좌표는 수학에서 사용하는 (x, y) 축과 다르다. 아래 그림처럼 좌측 상단에서 (0, 0)으로 좌표가 시작된다.

offset inset
view constraint = superVIew constraint + offset여백을 설정해 뷰의 크기를 조정. padding의 개념