TV show manager helps movie fanatics to keep track of movies and series they have watched over time.
The architecture of this application relies on and complies with the following points below:
- A single-activity architecture, using Navigation Components to manage fragment operations.
- Pattern Model-View-ViewModel(MVVM) which facilitates separation of concerns and ensuring single responsibility between the different layers of the application
- Android architecture components which help to keep the application robust, testable, and maintainable
- ViewModel to store and manage UI-related data in a lifecycle conscious way.
- LiveData observable data holder that is lifecycle-aware.
- Navigation Component handle fragment navigations and passing of data between destinations.
- Material Design
- Coroutines
Managing threads efficiently and reducing the need for callbacks
. - Room abstraction layer over SQLite which allows for more robust database access while harnessing the full power of SQLite.
- Android KTX which helps to write more concise, idiomatic Kotlin code.