Android封装架构遇到的问题

为什么封装架构

新入职一家公司,代码比较乱,基本上都是在Activity中发起网络请求,同样的代码写很多次;同样的功能,在不同的地方,实现很多次,刚好自己也没有封装架构的经验,趁这次机会学习一下,然后记录

选择架构 (MVP+ViewModel)

是MVP,因为MVC的确已经用的差不多了,MVVM自己由不会,MVP属于自己知道一点,没实践过,所以就决定是MVP了。

第三方库的选择

因为原项目中已经使用了很多库,而且很多形成了强耦合,所以这次重构也是基于这些第三方库来实现的,基本都是比较新的库

第三方依赖

  • Retrofit
  • OKHttp
  • RxJava
  • Glide
  • Greendao
  • Protobuf

遇到的问题

  • 在封装Presenter(父类,Base)的时候,一直在想如何让使用者调用的时候更方便,导致父类封装了大量的无关的代码,比如实现第一次请求,将View层的方法,在请求的时候,直接使用;结果在子类实现父类的时候,大量方法很难被实现。
  • 在封装BaseModel的时候,不知道如何下手,不知道如何封装,目前这个点还卡着,仔细想想
  • 分不清 View 和 Presenter的关系

思考

  • Presenter的作用
  • View的作用
  • MVP的具体关系

你可能感兴趣的:(Android封装架构遇到的问题)