简述 高效Android框架

项目大、杂、乱怎么办?重构!

不管你的项目现在是什么样子,模块化之后会是这样的结构。


1

如图所示,

1. 根据业务规划,选择了合适的3rd Library

2. 封装3rd Library,形成适合业务使用的Base Library

3. 经过Framework Layout的处理,这里可以是router分发,common业务二次封装等

4. module独立,形成高内聚低耦合的结构

重构两步走

一、提取公共部分

  1. activity 保存业务无关Activity基类,封装业务无关的公用逻辑。Activity会有两层,一层是业务无关的BaseActivity,一层是业务相关有公共的AppBaseActivity
具体业务如下:

    

2

  2. net    存放的是网络底层封装。
  3. Cache  缓存图片和数据
  4. UI(view)存放自定义的控件
  5. Utils   业务无关的工具类。比如StringUtilsSharedPreference

二、模块拆分独立

  3

根据业务的不同划分模块,业务间解耦,业务独立。
  1.  Activity:继续拆分,activity还是放在这里
  2.  Adapter:所有的adapter(适配器)都放这里
  6.  Utils:业务内的公共方法
              数量剧增。

  3.  DB:业务不一样,自然可能需要不同的DB,故独立出来自己二次封装

  4.  Engine:业务相关的类都放在一起

  5.  UI:自定义的控件

  7.  Interface:只存放接口,要注意命名规则

  8.  Listener:放一些业务相关的Listener,注.针对事件编程就不好写这里,这会导致类

三、增加中间层解耦

  1中有Framework Layout。就承载了承上启下的作用,

  模块化的时候,需要用到Routerdata传递,解析。
  插件化的时候,需要在这里进行classloader的处理。
  这篇复杂,就不做详细叙述了

猜你喜欢

转载自blog.csdn.net/wangxueming/article/details/72876652