2020Android又凉了-来看看Android的发展-谈一下当下最合适的架构

丝得一根一根地抽,茧得一层一层地剥,对的,一个好的架构绝对是层次分明,各司其职,做人做事一样,做好自己不越界是门技术活。世间万物,都是独立的存在,可以很近,又可以很远。代码架构的设计当然离不开层次的设计。

领域驱动

架构不是满足所有领域,不是大杂烩,他是针对特定领域的最完美的总结,关注特定领域,保持初心。

Android架构演进

MVC > MVP > MVVM

我们先回顾一下google为我们做了什么,一开始我们接触android,大家都在用MVC,甚至可以说没有架构,而且那个时候app是真的简单,但随着不断的迭代,问题越来越多,google也发现了这个问题,于是github开源了MVP架构的示例,教我们如何整合框架,如何在架构设计上保证业务的发展需求,再到现在主推的MVVM,其实不难发现一个共性,WEB端大家都知道吧,你看现在最火的React、Vue,不都是MVVM的架构吗(有人说不是,有人说是,这里不多解释,我们不应该纠结是不是,应该理解M-V 、 V-M 是数据绑定UI,无非是单向还是双向的,都属于一种理念吧,理解就行。)

原生 > React Native > Flutter

一个好的架构只是MVC到MVVM吗?

我不这么认为,从一开始我们接触到原生的Android开发,到后来大火的React Native,我们16年还专门集成了React Native模块,但做了几个迭代后放弃了,我们发现为了适配Android、Ios 也花费了很多时间,倒不如用原生做的好用。目前最火的Flutter,也是Google主推的跨平台框架,而且我们现在就在C端项目中集成了,效果还不错,虽然也是有很多问题,但总体来看比React Native 要好,还有一点Google内部正在开发的另一个操作系统Fuchsia的UI layer采用的是Flutter,也就是说Flutter天然可以支持Android、IOS以及未来的Fuchsia。在大前端方向,对于跨平台开发中一直在不断迭代中寻找更好、更优的解决方案,目前来看Flutter还是更有优势

Java > Kotlin,Dart

来说说语言,你说语言属于架构吗?我也不知道,但这是我架构的时候考虑的一个方向,语言是我们组织架构最基础的单元,kotlin的普及,应该不仅仅是google认为语言不错,让我们广大开发者使用,其实这里面涉及了很多东西,我们知道最新的android引用的是open jdk,前几年的官司打个不停,付出了不少人力财力,这肯定不是我们还要考虑的,但有一点可以肯定,kotlin语言确实是个趋势,因为他有更合理的设计,更安全的性能表现,更加简洁的代码,当然你可以用java写android写到老,我也不认为你用kotlin写就一定比java写的好,看个人选择吧。再说说Dart,这个我就有点不理解,为啥Flutter一定要用Dart写,好像Google工程师这么回答:说Dart就在隔壁啊,好沟通。哈哈。

通过上面的闲扯,我们基本已经有了架构的雏形了吧
MVVM + 原生 + Kotlin

MVVM + 原生、Flutter + Kotlin、Dart
等等…
自己组合吧,我目前选择第二种,相信很多人的项目都已经是这样了。那么接下来我们就要实现这样的架构,架子有了,就该塞东西了,这样就显得饱满一些。

###总结
从Android的架构演进,不难看出未来的世界肯定是大前端的,所谓的大前端也许是大佬们一个概念,但从这几年好多大统一的技术出现,感觉未来不远,也许就是明天,在这奉劝各位读者,提升自己就在现在,T型人才未

《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》

浏览器打开:qq.cn.hn/FTe 免费领取

来才是互联网的中流砥柱。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值