Android 架构设计(三):技术选型

同系列传送门:

Android 架构设计(一):设计模式分析_赵星海的博客-CSDN博客

Android 架构设计(二):分包和文件结构_赵星海的博客-CSDN博客

Android 架构设计(四):组件化?_赵星海的博客-CSDN博客

Android 架构设计(五):命名规范与层级规范_深海呐的博客-CSDN博客

关于架构设计的分享,本期深海会和大家分享探讨一些技术选型的问题:

语言选型:

推荐Kotlin,原因有三:

1:代码量少,体积小,效率高。同样需求的代码,Java写可能需要100行,用Kotlin写可能只需要80行。

2:语言与场景契合性好。比如单例的object关键字,数据模型(Bean)的data class,Layout控件直接引入id进行操作,免去了findViewById的步骤。并且以上举例,在场景契合的同时还免去了很多代码,间接提升了效率,减小了代码体积。

3:安全性好。语言自区分"可为空"和“不可为空”的对象类型声明,极其简洁的问号判空。避免了很多空指针异常。

网络请求框架选型:

这个具体要看项目中网络请求相关业务复杂度,以及架构设计侧重点

如果业务复杂度较高,或者架构设计侧重解耦的话,推荐使用RxJava+Retrofit

如果业务复杂度较低,或者追求代码简洁的话,推荐使用OkGo、OkHttpUtils(廖子尧)、OkHttpUtils(鸿洋),OkHttpUtils(根据需求定义自行封装)

不推荐 Volley

图片加载框架选型:

首推 Glide  ,其他推荐优先级递减:   Picasso(缓存体积较大)、ImageLoader(配置较多)、Fresco(体积较大)

数据存储框架选型:

缓存框架:MMKV 存取速度快,体积小。

数据库框架: GreenDAO  使用简单。

响应式框架推荐:

推荐RxJava/RxAndroid,EventBus。

相对来说这两个框架都会增加项目的熟悉成本,只要不是特别复杂的逻辑,深海还是建议使用有组织性的接口回调

线程切换框架:

推荐ArchTaskExecutor   其次是RxJava  再其次是 AsyncTask

ArchTaskExecutor:Android ArchTaskExecutor快速线程切换_赵星海的博客-CSDN博客

AsyncTask:Android 重新回顾经典异步类 AsyncTask_赵星海的博客-CSDN博客

状态栏管理框架:

推荐:ImmersionBar 使用简单方便

调优框架:

内存优化推荐 LeakCanary

奔溃报告推荐 Bugly 

Json解析框架:

首推Gson,其次推荐原生JsonObject

你可能感兴趣的:(#,Android进阶,android,Android,架构设计,Android,三方框架推荐,Android,技术选型,Android框架推荐)