最近学习了下 MVVM,总结一下个人认为的最佳实践。接口使用 V2EX 的抓取的接口,做了部分功能。mvvm 使用的技术是 RxJava+DataBinding,网络请求 Retrofit,图片加载库 Glide,UI 设计仿 android 版知乎。
接口从知乎上找的,地址在这里: https://github.com/djyde/V2EX-API
我的这个项目地址在这里: https://github.com/onlynight/V2EX
如果可能的话希望能够拿到 V2EX 的其他接口,想做一个非官方客户端练练手。github 项目地址里有 app 的预览。
1
fortunezhang 2018-05-14 16:29:02 +08:00
感觉.idea 应该 ignore 掉。
|
2
wyndamlion OP @fortunezhang 哈哈哈,好的,多谢指点
|
3
wyndamlion OP 只用了 DataBinding 的基础功能,并没有使用高级功能,不想污染 xml ;也没有使用官方提供的 LiveData 这样的工具。个人觉得 xml 被污染了很难受,所有多了一步在 view 中 setValue 的操作。基本是使用 Rx 的响应式方式对数据更新从而更新界面。
|
4
lookforsex 2018-05-14 16:47:38 +08:00 via iPhone
如果加上 KOTLIN 的加持,我觉得代码会更漂亮
|
5
wyndamlion OP @lookforsex 后面单独开个分支来做 kotlin 的版本,多谢分享。
|
6
DeweyReed 2018-05-14 17:19:51 +08:00
apk 可以放到 Release 里,不然 Github 一直发邮件提醒你。
LiveData 和 ViewModel 都成官方推荐了,处理横竖屏也省事儿。 |
7
wyndamlion OP @DeweyReed 闭门造车啊,不太了解现在流行什么,我去研究下。
|
8
shangshicc 2018-05-14 18:42:17 +08:00
建议可以参考 Google 官方架构 demo:https://github.com/googlesamples/android-architecture
|
9
wyndamlion OP @shangshicc 基础的框架类似于 RxJava-todo 分支,加了些 databinding,使用 lambda 表达式精简代码。
|