RecylerView 변천사

2021. 11. 18. 23:52Android/RecyclerView

개선 과정

RecylerView -> DiffUtil -> AsyncListDiffer -> ListAdapter 

 

Google 샘플 에서도 ListAdapter 사용

https://github.com/android/views-widgets-samples/tree/main/RecyclerViewKotlin/

 

GitHub - android/views-widgets-samples: Multiple samples showing the best practices in views-widgets on Android.

Multiple samples showing the best practices in views-widgets on Android. - GitHub - android/views-widgets-samples: Multiple samples showing the best practices in views-widgets on Android.

github.com

시간 없으신분은 Github에서 다운받아 확인 하면 됩니다.

 

DiffUtil

두 아이템간 차이점을 찾고 업데이트 되어야 할 목록을 반환해줌

변경해야 할것만 업데이트 하니깐 성능이 향상됨

AsyncListDiffer(DiffUtil의 개선버전)

내용이 많을때는 백그라운드에서 비교 처리를 수행하고 결과를 메인 스레드에서 처리하는 과정이 있었으나

AsyncListDiffer가 해줌

ListAdapter(AsyncListDiffer를 내부에서 사용하고 있음)

ListAdapter를 상속한 클래스를 만든 것 만으로도 AsyncListDiffer를 사용가능

기타등등 많은것을 해줌

 

결론

RecylerView는 ListAdapter 사용

 

참고 사이트

https://developer.android.com/reference/kotlin/androidx/recyclerview/widget/ListAdapter

 

ListAdapter  |  Android Developers

 

developer.android.com

https://developer.android.com/reference/androidx/recyclerview/widget/AsyncListDiffer

 

AsyncListDiffer  |  Android Developers

 

developer.android.com

 

'Android > RecyclerView' 카테고리의 다른 글

RecyclerView 하단 공백  (0) 2021.12.01