美文网首页
作为中国首位 Android & Flutter 双料 GDFE

作为中国首位 Android & Flutter 双料 GDFE

作者: hackware | 来源:发表于2022-06-06 13:00 被阅读0次

    引言

    Android 7 年,Flutter 半年,最近喜提中国第一位 Android & Flutter 双料 GDFE,谈谈我的感受。

    我是谁

    我是 hackware,你可能没听说过我,但如果你做过 Android,那你可能大概率用过我的开源库 MagicIndicator(9.2K star)。我的作品如下:

    1. MagicIndicator,也许是 Android 下最强的指示器框架
    2. Flutter ConstraintLayout,声明式 UI 下更强大好用的约束布局
    3. MMP_Architecture,比 Jetpack DataBinding 更好的 MVVM 框架,数据视图双向绑定
    4. weiV,Android 全新声明式 UI 开发框架,支持 Java
    5. Flutter_PVState,Flutter 下更轻量好用的状态管理方案
    6. ChenSort,刚开发的世界上最快的通用排序算法,平均比快排快 3 倍,最快达到 20 倍

    GitHub:https://github.com/hackware1993

    欢迎关注我的公众号:FlutterFirst,带你起飞。

    GDFE 简介

    你可能听说过 GDE,但肯定没听说过 GDFE,它即 Google Developer Fake Expert,翻译过来就是谷歌开发者砖家。

    下面我从砖家的视角,谈谈我对技术的一些看法,一家之言,仅供参考。

    系列看法 - Android 篇

    架构

    那必须把 Jetpack ViewModel 用起来啊,它是最好的 MVVM 架构的基石。结合 LiveData 使用,比 MVP、MVC 好太多了!你再也不用像 MVP 那样定义一大堆接口,只需要定义一大堆 LiveData。

    虽然它没有数据和视图的双向绑定,但它的名字叫 ViewModel,那肯定是 MVVM 啊。毕竟 MVVM = Model + View + ViewModel。再说了,通过 LiveData 来更新 UI 时,你操作了 LiveData,UI 就变了,UI 事件发生后,通过 viewModel.handleXXX() 通知到 ViewModel,不也是一种双向绑定么?

    即便你不用 ViewModel,那你也应该首选 DataBinding 啊,你看,都可以在 XML 里写表达式,多爽!

    当然,上面的论述仅限于 MVI 没有出来之前,MVI 出来以后,肯定要抛弃 MVVM,把这个更好的架构用起来啊!

    dog.jpg

    语言

    那必须把 Kotlin 用起来啊,你看 Kotlin 写的代码多简洁。再把注释和空行删掉,那就更简洁了,Nice!

    Kotlin 早就是官方的推荐语言了,你再不用,就等着失业吧!

    比如 Bean 类,一个 data 关键字就搞定了,Java 多弱啊,还需要手写那么多代码,多费事啊!

    dog.jpg

    算法

    那必须要在业余时间多刷算法啊,现在大厂对算法都有要求,有时还是强制性的。再说了,连算法都不精,你怎么向别人证明你的逻辑思维能力能够胜任工作?技术八股文大家都会背,对算法的掌握程度才是展现一个人核心能力的最重要指标。你连个快排都默写不出来,怎么证明你的实力???

    dog.jpg

    Framework 原理

    那必须得深入研究 Framework 层啊,毋庸置疑,只有精通底层原理,才能更好的开发出高质量的 App。比如:

    1. 你不懂 Activity 的启动过程,不懂 AMS、Instrumentation 等等,怎么能会做应用的启动优化?
    2. 你不懂 ANR 的底层原理,怎么能让应用保持流畅?

    如果你有精力,最好能深入到 Linux 内核层。这样也许你就能转向底层开发,那多吃香啊,做上层 UI 多没技术含量。

    dog.jpg

    虚拟机

    那必须得深入研究 JVM 原理啊,你天天用 Java 开发,怎能停留在语法表面呢,只有了解了 JVM 的原理,才能写出更优秀的 Java 代码。比如:

    1. 你不懂垃圾回收算法,不懂分代回收机制,怎么能保证你用静态变量时不导致持久代 OOM?
    2. 你不懂双亲委托模型,你怎么知道别人不会在线上把你的类替换掉?
    dog.jpg

    学习

    那必须得优先听培训课啊,毕竟名师出高徒嘛,你自学怎么能比得上大佬手把手教你?

    dog.jpg

    技术选型

    那必须得严格按照 【大厂 > 中厂 > 小厂 > 个人】 来啊。谁敢用个人的开源项目?大厂才稳定好用,比如 FastJson 就一直稳定支持代码注入能力,是最好的 Java 动态化框架。堪称十年磨一剑。

    要避免重复造轮子,应该优先寻找可用的开源方案,很多大厂的轮子都是内部的 KPI 项目,没啥价值,比如微信团队完全没必要搞 Tinker 这套东西,FastJson 它不能满足需求么?

    dog.jpg

    结语

    好了,以上就是我七年的技术心得,它浅显但实用,持续让我能在互联网寒冬和裁员潮中屹立不倒并最终成为了中国首位双料 GDFE,希望对你也有帮助。

    下期我再分享一下 Flutter 篇,欢迎关注。

    欢迎多多转发,帮助你的同事提升技术水平,早日让他成为 GDFE。

    如果你也是双料 GDFE,那下面这张图你也许能用得上,如果是单料,那就算了,还没来得及做。

    GDFE_slogan.png

    相关文章

      网友评论

          本文标题:作为中国首位 Android & Flutter 双料 GDFE

          本文链接:https://www.haomeiwen.com/subject/rbljmrtx.html