Android Clean Architecture

Architecture:

  • API
  • Repositories
  • UseCase
  • ViewModel
  • View

Technologies:

  • Retrofit/GSON
  • Coroutines
  • Hilt
  • ViewBinding
  • Mockito
  • Room
  • Picasso

TODO (Code):

  • Inject Dispatchers
  • Integrate Truth into all Unit Test
  • Integrate Turbine into Coroutine/Flow tets.
  • Create List UI
  • Drawables (application can be dividers between cells)
  • Create detail UI
  • Implement MockWebServer to Unit Test Retrofit API calls
  • Cache - Room
  • PrimaryWithFallbackComposite
  • Finishing UI touches

TODO (Curiosity):

  • Play around with UI testing
  • Modularise the project like you would in iOS

TODO (Documentation):

  • Coroutines
  • Dispatchers
  • Hilt
  • Retrofit
  • Mocito/Truth/Turbine
  • Room
  • Picasso
  • Drawables