体系结构设计

体系结构设计

一、在android中使用MVC模式的缺点

在android中,如果我们要用mvc模式,那么每层代表什么呢?

  • View:对应于布局文件

  • Model:业务逻辑和实体模型

  • Controllor:对应于Activity

    那么View层对应于布局文件,能做的事情就特别少,关于该布局文件中的数据绑定的操作,事件处理的代码都在Activity中,造成了Activity既像View又像Controller。

二、MVP模式

MVP模式的解释:

  • View 对应于Activity以及xml布局,负责界面的展示以及与用户交互。
  • Model 依然是业务逻辑和实体模型。
  • Presenter 负责完成View于Model间的交互。

在学生导师互选系统中MVP模式的应用:

  • View:视图层, 负责向用户显示信息,不同的角色可以看见的视图不同。用户在视图上与系统进行交互,一些用户的行为(如填报志愿、选择学生、勾选系负责人、开始只能匹配等)View会调用Presenter里面的功能,即调用Presenter里面的方法。
  • Presenter:调用Model层的方法,进行数据处理。并将Model的操作结果,作为信息传递给View层,通知View更新视图界面,与用户进行交互。
  • Model:业务逻辑和实体模型。包括对数据的操作。在这一层包含了访问数据:如查看导师列表、查看导师信息、查看学生信息。对数据的修改,将分配结果写入数据库等。

使用MVP模式的好处:

  • 降低模块间的耦合度。
  • 便于测试。
  • View从特定的业务场景中脱离出来,可以说View可以做到对业务逻辑完全无知。它只需要提供一系列接口提供给上层操作。这样就可以做到高度可复用的View组件。

导师互选系统mvp模式详解

参考
浅谈 MVP in Android
界面之下:还原真实的 MVC、MVP、MVVM 模式

原文地址:https://www.cnblogs.com/yc-chen/p/6025079.html