Advances in Collection View Layout - WWDC19 - Videos - Apple Developer
Implementing modern collection views | Apple Developer Documentation
샘플 프로젝트
Compositional Layout 소개
- concrete layout class를 서브클래스하여 레이아웃을 구성해왔다. (FlowLayout)
- 기존 컬렉션뷰 레이아웃은 Line 기반 레이아웃에 맞게 구성되어 왔다.
- 하지만 앱들은 점점 복잡한 레이아웃을 필요로 하게 됨

- 복잡한 화면을 그리기 위해서 기존 방식으로 커스텀 레이아웃을 구성하게 되면 아래와 같이 코드도 많아질 뿐더러, 많은 고려사항들이 생기게 됨

그래서 이런 단점들을 개선할 수 있는 새로운 레이아웃 클래스를 소개하게 되었음
⇒ Compositional Layout
Compositional Layout이란
아래와 같은 특징을 갖는다.
- Composable ⇒ 서브클래싱 대신, 작은 단위부터 조합하여 레이아웃을 구성하는 선언적 방식
- Flexible ⇒ 많은 레이아웃에 적용 가능한 유연한 구조
- Fast ⇒ 프레임워크 내부적으로 최적화가 적용되어 있음