2020Android开发现状分析

作者: 4ca1bbef6a0c | 来源:发表于2020-04-21 14:42 被阅读0次

进入2020年,Android生态也发生了不少变化,从一个多年经验的Android开发者角度分析Android的开发现状,不喜勿喷。

Kotlin

Kotlin已经成为Android开发的官方语言,Android的新的文档和Sample代码都开始转向Kotlin,在未来Java将加速被Kotlin替代。

KTX

KTX是Kotlin与Android之间无缝衔接的粘合剂,是Kotlin和Android能够发生化学反应的催化剂。未来将在Coroutine等各方面为Android提供更多支持。

Jetpack

Jetpack的意义在于帮我们在SDK基础上提供了一系列中间件工具,让我们可以摆脱不断造轮子抄轮子的窘境。同类的解决方案首先考虑Jetpack其次考虑第三方实现,没毛病。

档案Jetpack本身也会不断吸收优秀的第三方解决方案进来。所以作为开发者实时关注Jetpack的最新动态就可以了。

Fragment

自从Android开始推荐SAA(Single Activity Application)模式以来,Fragment的角色越发重要,出现了很多改进,FragmentFactory、FragmentContainerView等增加了很多新技能。根据Android Submit中介绍,对于一直被诟病的Fragment的复杂的生命周期在不久的未来也会被优化(Fragment将废弃onActivityCreated),所以有条件的话希望大家多使用Fragment少使用Activity。

Security

安全性是个容易被忽略的需求,但是在未来将会越来越受重要。Security是Jetpack提供的可用于SharedPreferences等数据读写场景的加密库,以往这种需求往往是开发者自己实现,现在官方提供了统一的解决方案,值得尝试。

现在minSdk支持到23,未来可能会向下兼容到21

Paging

Paging不用多介绍了,现在是列表页面中的主流方案。3.0好像用Kotlin完全重写了,全面转向Coroutine,将会给开发者带来全新的使用体验。

Android Code Search

官方提供的AOSP以及Jetpack源码的检索工具,不只是简单的显示代码,左侧还可以浏览文件目录和文件的outline,还可以查看git提交历史等。

但是毕竟不是本地代码,再加上服务器在境外,访问体验不是很流畅,作为简单大范围浏览时使用这个在线工具,作为模块精读时还是clone到本地比较好

DI

虽然Kotlin有Koin等方案,但是Google在Android中仍然推荐首选Dagger,各种AAC的demo里也充斥着dagger的使用。虽然Dagger的学习门槛相对其其他同类框架稍高,在大型项目中确实是有长远收益的,未来对于dagger-android的易用性上也会进一步优化,建议作为DI的首选方案

Coroutines

个人认为Coroutine到目前为止的推广速度不尽人意,可能是因为Andorid端一直缺少前端那样的Promise模型的异步通信(Future在Android上的使用也不多),所以开发者缺少对协程理解的心智基础,再加上RxJava等框架实在太过优秀。但是随着Flow的推出,以及Jetpack对Coroutine的不断加持,我对其未来还是保持乐观的,没有接触过的同学最好赶紧熟悉起来

Kotlin multiplatform project

KotlinConf 2019中关于MPP的讨论非常多,Kotlin1.4也将最多的升级放到了MPP上,个人感觉MPP作为Kotlin未来竞争力的关键,势必得到Jetbrins甚至Google的重视,未来潜力巨大,值得关注。

Jetpack Compose

Google I/O 2019 发表的新的声明式的UI框架。目前虽然还处于pre-alpha,经过下载体验目前确实还很不完善,但是新的设计思想绝对是趋势,已经在react和flutter等前端领用中得到验证,ios开发中同期推出的swiftUI更是证明了业界对于这种声明式UI开发趋势的共识,据说2020年内会出较为未定的beta版本,希望beta出来后大家尽快尝试,说不定不久的未来将会取代你现有的UI开发方式。

Android Studio

Android Studio 4.0 的增加了很多新功能 例如 对Compose的支持,以及3D View等,非常便方便。另外,D8/R8的Desugaring可以帮助我们在更低版本OS上使用Java8

minSdkVersion

个人感觉minSdkVersion应该从23起步,23以下的机型在APP开发中可以注解放弃

总结

这几年Android新技术的迭代明显加速了,这里有来自外部跨平台新物种的挑战,有去Java化的商业考量,也有Jetpack等官方自建平台的加速等多种原因。作为Android开发者,我们需要密切关注的同时也不必盲目跟随,还是要认清趋势,结合项目现状再下手也不迟,避免在那些昙花一现的所谓新技术上浪费时间。

相关文章

  • 2020Android开发现状分析

    前言 进入2020年,Android生态也发生了不少变化,从一个多年经验的Android开发者角度分析Androi...

  • 2020Android开发现状分析

    进入2020年,Android生态也发生了不少变化,从一个多年经验的Android开发者角度分析Android的开...

  • Android 开发模式:mvp+retrofit2+rxjav

    Android开发模式选型分析 源码:Github地址 一、Android市场普遍开发模式现状 就目前Androi...

  • iOS开发就业现状分析

    毕业到现在差不多两年了。会想毕业那会儿,iOS开发的就业环境似乎还是不错的。如今,却要艰难的多。恰巧学了点爬虫的知...

  • 如何接手老软件

    接手项目的结果导向,肯定是需求来了能分析,分析后能开发,开发后能发生产,稳定运行不出问题,就是最棒。摸清现状,有坑...

  • 第一章策略、方法和方法论

    建议将性能调优集成到软件开发过程中。 性能问题的现状 传统的软件开发过程:分析、设计、编码、测试。分析:用于评估需...

  • 简单聊聊2020Android开发的现状和思考,以及未来发展!

    前言 最近和一些跳槽的 “老 Androd” 闲(mo)聊(yu)后颇有感触,从事 Android 开发这么多年,...

  • 《小农夫》校本课程开发实施规划

    一、课程开发可行性分析 学校依据学生的需求、教师的现状、学校资源、本乡的地理条件、在认真调查、客观分析的基础上,对...

  • 现状分析

    一 二姐:退休,打一份工,二份薪水。 二 女儿:上班,8月开始领薪水。 三 老哥:赋闲,17年始可能病退。 四 购...

  • 现状分析

    自进入高中以来,就抱着抛却应试的心。全心全意走自己的素质之路,或许,这条路本来就太偏了,一句话来说:在中国,抛却了...

网友评论

    本文标题:2020Android开发现状分析

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