MVVM on Android
Oct 16 2018 · Intermediate · Video Course · 58 mins
In this course, you will learn how to build an Android app using the Model-View-ViewModel presentation architecture pattern, including testing and data binding.
Version
- Kotlin 1.2, Android 4.4+, Studio 3.1.4


Let's review what you will be learning in this course, including a brief discussion of benefits of MVVM and the course sample project.
1In this video, you'll learn about the need for architecture patterns like MVVM and define the layers of an MVVM app.
2Create the Model layer for the course sample project, including adding JUnit tests of Model layer classes.
3Model Repository
7:31Create a repository interface for saving your Model data, and implement a concrete version of the repository using the Room database library.
4The View
2:26Examine the XML layout file and Kotlin class that constitute the View layer of the Add Creature screen.
5See how to use the Android Architecture Component ViewModel and LiveData classes to create a ViewModel layer for your app.
6Use JUnit to add unit tests for the functionality of the ViewModel layer, while utilizing Mockito to mock dependent classes.
7Add the ability for the ViewModel to save Model data into the repository when receiving user events from the View layer.
8Prove out your understanding of writing ViewModel tests by adding a test to ensure that a Creature without defined attributes cannot be saved.
9Challenge: ViewModel
4:06Put your new MVVM skills to work by creating a ViewModel for the All Creatures screen that shows a list of all creatures in the repository.
10See how to add Data Binding to your Android app and how to bind user actions in the View to methods in the ViewModel.
11Data Binding 2
3:13Learn how to setup two-way data binding between an element in the View layer and a property on the ViewModel.
12Conclusion
1:54Review what you learned in the course and learn about other potential architecture patterns for your Android apps.
13
Comments