룬아님의 취중코딩

Android Data Binding Library vs Kotlin Android Extensions 본문

개발/안드로이드 개발

Android Data Binding Library vs Kotlin Android Extensions

룬아님 2019. 10. 31. 16:14

https://stackoverflow.com/questions/50226081/android-data-binding-library-vs-kotlin-android-extensions

 

Android Data Binding Library vs Kotlin Android Extensions

I'm reading about how the MVVM architecture works and how to use Android Data Binding Library help. In a very general way I understand that Android Data Binding creates a link between UI layer and...

stackoverflow.com

 

데이터 바인딩과 코틀린을 사용하면 findViewById를 대체할 수 있는 방법이 있다.

1. Kotlin extension

rv_repository.adapter = listAdapter

 

2. databinding

viewDataBinding.rvRepository.adapter = listAdapter

 

두 가지 방법을 같이 사용할수 있을 때 어떤 방식이 더 선호될까?

 

구글 블루프린트에는 databinding을 이용하는 것으로 구현이 되어 있다.

그럼 이유는 무엇일까?

 

databinding 문서에 의하면 databinding은 findViewById()를 사용하지 않기 때문에 좀 더 효율적일 수 있다고 나와있다.
Kotlin Extension의 경우에는 한 번 findViewById를 호출하고 뷰 참조를 캐쉬하는 방법을 사용하고 있기 때문에(view caching 관련 문서) findViewById()를 호출하지 않는 databinding이 좀 더 효율적이라고 생각된다.

또한 Google Android 팀은 kotlin extension 사용을 권장하지 않는 것 같으며 이 아티클에서는이 문제에 대한 토론을 요약한다. 또한 Google에서 준비한 새로운 Udacity 과정에서 권장 방식으로 데이터 바인딩을 사용하고 있음을 알 수 있다.

 

반응형
Comments