Skip to content

shymek/marvelSquadMaker

Repository files navigation

Android Tech Test Project

This repo contains a project I was required to implement for a tech test.

While doing it I tried to use some new things I never used before which are

  • Coroutines
  • Koin
  • LiveData

Hence parts with these bits might seem odd.

General Architecture

In this project I used MVVM with DataBinding and UseCases along with ViewModels from Google.

For navigation I used Jetpack Navigation

For storage I went with Room

And for HTTP requests I used Retrofit

And lastly for loading images I used Glide

Testing

For testing I used Junit4 and implemented only UnitTests for ViewModels and UseCases. I had some trouble with testing suspend functions hence there's a Suppress annotation on some of them.

My Takeaways

Koin turned out to be easy to learn but I imagine it might get messy in larger projects. Especially the fact that every class has to be provided explicitly unlike in Dagger2 when every dependency was provided elsewhere we could just use the @Inject annotation and that was it.

About

Showcase Project

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages