一位Android资深工程师对移动端架构的思考( 五 )


5、热重新加载

  • 缺点
1、包体很大需要打包自己的SDK
2、占用内存空间大
3、启动时间很慢
4、流畅性和原生有差距
不过因为FLutter还没与正式出版,相信FLutter会解决这些缺点的 。
  • RN和Flutter差别:
对于这两者系统架构的区别 这里有两张图:
一位Android资深工程师对移动端架构的思考

文章插图
 
 
一位Android资深工程师对移动端架构的思考

文章插图
 
我们可以看出来 主要差别就是Widgets的差别,还有Bridge中间层的区别,Flutter从理论上的速度要别RN高很多,没有了中间层的倒转,有自己的Widgets可以保证IOS和android上的统一 。
实现跨平台的这两种方式也是架构设计的体现,Bridge有没有和Presenter很相似,连接着js和系统 。
RN是将一种设计理念延伸到两个平台,而Flutter则实现了一套代码,部署多个平台 。
不同的设计思想,会走向不同的路,到底是哪一种走的更好,这个可能就需要随着时间去检验了,虽然理论上FLutter要比RN好很多,但是现在的显示很残酷 。不过FLutter才是Beta版本,潜力非常大 。
一位Android资深工程师对移动端架构的思考

文章插图
 
写在最后本文把目前移动端主流的架构顺了一遍,也是我自己对架构认识的一个时间轴,从刚开始的胡乱编写,到后来有些章法,不过还是对框架的领悟很浅,肯定有很多谬论错轮,希望以我个人对架构的思考可以抛砖引玉,如果可以给你一些帮助,那是极好的一件事情了 。
不管是RN还是Flutter,亦或是原生的IOS和Android,其实他们本质编程思想是一致,同样,随着更多更方便的框架出来,我们的理解能力和学习能力受到了很大的挑战,很多同学都说学不动,但是事实上技术的更新换代远比我们学习新知识要快,往往我们刚学会这个,又会出了另外一个,我们只要掌握了它的核心思想,就不会那么累和无奈了 。
这就是技和道的差别,通过技最终掌握道,而不是以技学技,那样没有终点 。
我们在实际中如何选择架构,其实这个的因素很多,最关键的是一个经济,比如项目时间比较短,还是独立开发,我们可能就要用MVC了,或者说应用的功能相对简单,也会取用MVC,至于MVP,或者MVVM,CLEAN,这个对于大型开发,特别是协作开发,有着很大的帮助 。因为我们工作不仅仅是技术,还有项目周期,老板的喜好,历史遗留问题,所以选择最经济的一个,而不是选择那个公认最好的那个 。
移动端的趋势越来越走向统一了,我们发现越来越多的公司,需要大前端的人才,所以要一直学习,创造时代的人都没有说累,我们跟着学习的人更不应该喊累,没有学不动,只有不想学 。同时欢迎大家来刚哥的知识星球,一起激励,一起砥砺前行 。
好了,文章到这里就结束了如果你觉得文章还算有用的话,不妨把它们推荐给你的朋友 。
以前我们一直被公司和技术牵着走,并不是自己在选择技术,而是不自觉地被推到了现在尴尬的处境 。想想有多少人对于自己将来要发展的方向和技术类型进行过深入思考和比较呢?
对于程序员来说,要学习的知识内容、技术有太多太多,要想不被环境淘汰就只有不断提升自己,从来都是我们去适应环境,而不是环境来适应我们!
而当你有了学习线路,学习哪些内容,也知道以后的路怎么走了,理论看多了总要实践的,我在这里给你们整理了我自己的Android 学习,面试文档,视频收集大整理,有兴趣的伙伴们可以看看~
【私信】回复【安卓资料】即可获取:
Android 学习,面试文档,视频收集大整理




推荐阅读