myDogs Android Jetpack MVVM Room Navigation Data Binding View Binding Method Binding Kotlin Kotlin Extensions coroutine