
项目里一直用的 MVP,最近出去面试,很多面试官问了 MVVM 相关问题,看来很多公司已经开始用上了 MVVM ?于是周末看了一下 MVVM,上来 DataBinding,ViewModel,LiveData 一套给我搞晕了,又害怕 Jetpack 这一套不是国内互联网的主流方案,所以来 V 站请教一下大佬们,Android MVVM 的主流方案,或者能丢给我几个开源项目学习一下,感激不尽!
1 0DBBFF 2020 年 8 月 17 日 |
2 windplume 2020 年 8 月 17 日 B 站搜索 longway777 |
3 coolmint 2020 年 8 月 17 日 有个专栏叫重学安卓,可以订阅一个看看,里面不少干货,现在小团队开发新产品用 jetpack 这一套挺快的,面试也是重要知识点,确实可以好好看看。 |
4 wobuhuicode 2020 年 8 月 17 日 flutter …… 感觉原生安卓的 MVVM 搞出来单纯就为了 KPI,内置的 API 经过这几年的布局 MVP 已经很成熟了。新 API 能没坑? 毕竟都是新 API,还不如直接用 flutter 算了。踩坑不如踩一个成熟点的 |
5 rebounce 2020 年 8 月 17 日 @wobuhuicode MVVM 很成熟也能解决很多问题,Flutter 才是那个可能有坑的。跨平台就其源头就不会做大,举个例子,Flutter 一旦做大到影响 iOS 原来的开发生态,就会被苹果拒之门外。 |
6 xiaoliu926 2020 年 8 月 17 日 |
7 azhangbing 2020 年 8 月 17 日 我一直在想有没有必要搞这么复杂 |
8 hongch 2020 年 8 月 17 日 1.到底项目多大才需要 mvvm 2.上 mvvm 的目的是啥?单纯为了架构而架构? 3.别人在用不一定适合当前项目 4.livedata 的 demo,google 官方不是有吗 |
9 xuanbg 2020 年 8 月 17 日 MVVM 已经被实践证明是一种优秀的设计模式。能很好地将 UI 、交互逻辑、业务逻辑和数据解耦。MVVM 模式的运用,无非就是把代码分门别类写对地方而已,实际上也是封装思想的一种体现。 |
10 zhuangzhuang1988 2020 年 8 月 17 日 要不看看 xamarin 的 mvvm?? |
11 Xusually 2020 年 8 月 17 日 MVVM 反而新手友好。。。老手看不上也正常 手动狗头.gif |
12 Habsburg 2020 年 8 月 18 日 你不会看 github 的吗 |
13 WebKit 2020 年 8 月 18 日 @wobuhuicode #4 flutter 现在坑还是太多,复杂页面也有点卡。。 |
14 WebKit 2020 年 8 月 18 日 MVVM 一般只用 ViewModel,LiveData,DataBinding 刚出来那阵用了一段时间,就放弃了。编译起来坑太多,还不能复用 layout |
15 gam2046 2020 年 8 月 18 日 大多数场景下,个人感觉自带的数据绑定就足够了,还避免了很多 NPE 的坑。但我没有写过很大型的 Android 应用 |
17 krystal9527 2020 年 8 月 18 日 @devfeng 可以看看 ViewBinding,是 DataBinding 功能弱化版本 |
19 fansangg 2020 年 8 月 18 日 建议了解一下 bindadapter |
20 mx8Y3o5w3M70LC4y 2020 年 8 月 20 日 via iPhone 2020 年了,任何新的安卓项目,无论什么复杂程度,我觉得都该用 mvvm+jetpack 。btw 我现在这个公司,还在用敲厉害的 mvc,封装的敲完美,代码看起来敲赏心悦目。 |
21 Bens0n 2020 年 8 月 20 日 首先 mvvm mvp 都只是一些架构模式,你问的问题没有意义的,你需要了解 mvp 和 mvvm 的区别。 什么时候用 mvp 什么时候用 mvvm,还有怎么实现 个人感觉直接使用 jetpack ( databinding 、livedata 、viewModel 、lifecycle )上手快,代码比较稳定,内存泄漏很少,写着也快 |