/MovieRankApp

I do clone coding about naver movie rank with kotlin

Primary LanguageKotlin

MovieRankApp

MovieRankApp is designed based on mvvm architecture. Also, it uses android architecutre components. I have implemented asynchronous programming using coroutines to communicate with the server. I used to repository pattern to use to local DB according to the network state.


Library

  • Minimum SDK 23
  • Kotlin based
  • Jetpack
    • LiveData : an observable data holder class
    • Navigation : Use fragment so easily
    • ViewModel : Designed to store and manage UI-related in a lifecycle.
    • Room : Local DB
    • Databiding : Allow you to bind UI components in your layouts
  • Daager2 : Dependency Injection
  • Glide : Image loading
  • Gson : Convert data class to JSON
  • Retrofit : RestApi library
  • Okhttp3 : Use the httpLoggingInterceptor
  • Coroutine : Implement asynchronous programming easily

MAD Score


Architecture

I implemented it based on mvvm architecture using databinding, livedata, viewmodel. Communication with the server is implemented to call the local DB or server according to the network rather than one data source. With the same interface, the data source can be determined by itself.

image