18 MVP

  1. MVP是什么?
    Model 业务逻辑及实体模型,View View的绘制以及用户交互, Presenter 负责View和Model之间的交互;实现了业务和UI的解耦,逻辑更清晰,维护更方便。
  2. 如何实现MVP架构?
    Model接口定义数据相关的操作;View接口定义UI的操作,由Activity实现;Presenter持有View和model对象,进行合理的逻辑调用;
  3. MVP架构会引起哪些问题,如何解决?
    由于持有View的引用(Activity),在Activity关闭后任然没有释放,可能会造成内存泄露
    利用基类和泛型,定义basePresenter和baseActivity在Activity声明周期中连接和释放弱引用presenter,在presenter中判定view是否为空,再进行相应的操作
  4. 如何优化MVP架构?
    参考handler的消息模式,对persenter进行重用,把View设置为Message的target,然后使用presenter操作message对象,进行UI事件的分发处理
  5. 参考
    MVP
    MVP内存泄露
    MVP优化

你可能感兴趣的:(18 MVP)