https://blog.csdn.net/guolin_blog/article/details/87900605
https://medium.com/androiddevelopers/viewmodels-a-simple-example-ed5ac416317e