-
collection view와 함께 동작하는 특수한 타입의 데이터 소스
-
collection view의 데이터를 관리하고 UI를 업데이트할 수 있다
-
전체가 아닌 변경되는 데이터만 reload
- 변경 데이터에 대해서만 애니메이션을 적용할 수 있음 -> 부드러운 애니메이션 효과 쉽게 적용 가능
데이터를 다루고 collection view cell을 제공할 수 있는 클래스
class UICollectionViewDiffableDataSource<SectionIdentifierType, ItemIdentifierType> : NSObject where SectionIdentifierType : Hashable, ItemIdentifierType : Hashable
- iOS13 부터 새롭게 소개된 UICollectionView API로, 기존의 UICollectionViewDataSource 보다 유연하고 선언적이게 데이터를 다룰 수 있다.
- UICollectionViewDataSource 프로토콜을 준수함 -> 관련 메서드 모두 사용 가능
특정 시점에서 view의 데이터 상태를 나타내는 구조체
struct NSDiffableDataSourceSnapshot<SectionIdentifierType, ItemIdentifierType> where SectionIdentifierType : Hashable, ItemIdentifierType : Hashable
- UICollectionViewDiffableDataSource 이 데이터를 제공하는 방법
- 섹션과 아이템으로 구성됨
- 각 섹션과 아이템의 식별자는 Hashable 프로토콜을 준수해야 함
- Apple Document