框架模式之MVC模式和MVP模式

来源:互联网 发布:支付宝数据 编辑:程序博客网 时间:2024/04/28 19:15

MVP模式是在MVC模式基础上发展而来的,先说下MVC模式

一般MVC模式M为模型负责提供数据,V为视图,C为activity负责更新UI和逻辑处理:


先创建个包为bean里面的类为JSON字符串转换的类;


再创建个包为beancallback里面是个接口定义一个成功方法参数为成功结果一般定义一个泛型,再定义个失败方法括号参数失败原因;


创建个包interfaces里面是个接口定义个方法,括号定义需要用户点击后才能获取的网络请求参数,还有beancallback包里面的接口,接口括号里面为bean包里面的的类;


创建个包modle里面定义个类 实现interface包里面的接口,并且实现接口里面的方法,

调用接口里面的参数callback对象把请求到的网络数据赋值给接口里面成功和失败结果值;


创建个包ui包里面一般activity,通过组件获取用户点击获取数据,创建个model包里面类的对象把需要的参数设置进去,更新UI和逻辑处理;



MVC把网络数据处理,剥离处理来减少项目解耦;后期维护方便,因为APP一般网路是最不稳定的。


MVC虽然把网络层剥离出来,但是逻辑层和UI更新层对应一些大项目还是会导致一个activity代码过于臃肿;由于MVC不能满足需求MVP才应运而生;

MVP在MVC基础上多了两个包,

一个view包里面是个接口定义所以UI界面更新的方法;

一个是presenter包里面定义个类 创建个构造方法参数为view包里面的接口,需要个model对象;创建个处理逻辑的方法,需要更新UI只需调用view接口的方法不用去实现具体方法,在UI包里面使activity实现view包里面的接口方法,负责UI更新操作;

MVP模式使整个项目更加解耦,分工跟加明确;更有利于大型项目的开发和团队开发;



0 0