美文网首页
Android的mvc架构

Android的mvc架构

作者: 一醉冰红茶 | 来源:发表于2018-05-16 15:29 被阅读9次

 Android的mvc架构

mvc架构主要是Model层,View层,Controller(控制器)。

Model层

1.JavaBean不是Model,但Model也可以包含JavaBean的职责,但不是必须的。

2.Model是用来处理数据的,如获取数据(本地或者服务器),数据处理,如CURD(增删改查)。

按照上面职责写一个Model类:

/**我是一个Model*/

public class TaskRepository{

   /**从服务器请求获取数据*/

   void getTasks(){}

   /**从内存缓存获取数据*/

   Data getTaskCache(){}

   /**从磁盘缓存获取数据*/

   Data getTaskDiskCache(){}

   /**保存一条数据*/

   boolean saveTask(Task task){}

   /**对数据进行排序*/

   Data orderData(Data data, int orderType){}

}

一句话总结,Model就是负责获取数据,操作数据,对数据进行业务处理的。

View层

它的主要职责为呈现Model的数据、主动询问状态或被动的监听。

通知控制器Controller去处理一些事情。

接受Controller,编辑自己与Model无关的状态。

按照这个职责写一个View类:

/**我是一个View**/

public class TaskView{

   /**当列表初始化后,告诉控制器该加载数据了*/

   void viewCreate(){

       controller.loadNomData();

   }

   /**更新列表*/

   void upDateList(){

       //主动请求Moder获取数据

       Data data = tasksRepository.getTaskCache();

       //更新ui

       list.update(data);

   }

   void beginLoadData(){

       list.showHead();

   }

}

Controller

接受View的操作,并转调给Model。

改变View的状态。

按照上面的职责写一个Controller类:

/**我是一个Controller*/

public class TasksController{

   void loadNomData(){

       if(tasksRepository.getTaskCache() == null){

           //执行Model

           tasksRepository.getTasks();

           //执行View

           view.beginLoadData();

       }

   }

}

根据大佬:https://juejin.im/post/5a16e0eff265da432e5baef4

相关文章

网友评论

      本文标题:Android的mvc架构

      本文链接:https://www.haomeiwen.com/subject/etgpdftx.html