MVP工程架构入门 swift版本

作者: 遇见猫的大鱼 | 来源:发表于2017-07-24 23:01 被阅读95次

MVP架构的入门初学篇:

     MVC搞的越来越难做写测试,是时候换一个啦!学习一下MVP的基础概念,做了一个入门的Demo

进阶传送门


 总的来说:

1,MVP (数据层和UI层完全隔离)

2,M数据层(数据库网络文件等与数据相关的数据层)---(不是model)

3,V UIView以及子类+ UIViewConreoller以及子类只是创建UI和刷新数据

4,P中介(用于关联M和V )

      v和p交互解决方案代理(定义交互协议)

      p层关联M层和V层,持有M层对象的引用和V层对象的引用


接下来用展示一些小Demo,类似一个登陆的功能

1,首先创建Model层,实现一个登录的方法login,这一层用于处理数据,但是数据的来源要封装处理,便于拓展:

M层

2,V层实现一个代理,用于P层数据回调给V层

V层协议

3,实现Presenter层

     (1) 持有M和V

(2)实例化

(3)实现一个login方法,调用M层的login方法,这个方法用来给V层调用

(4) 实现V和P的绑定和解绑方法

(5)整体代码,这里在使用

//从m层的的回调,回调到v层去,同样还是通过一个代理实现

self.loginViewDelegate?.onLoginResult(result: result) 

这里的self.loginViewDelegate应该是需要校验的,因为可能为空

4,View层的简单使用

5,到这里小Demo就结束了,感觉每一个View层都要创建协议?好坑爹,从入门到放弃,哈哈哈!但是每一层都分离出来确实好测试很多,单元测试的话

附上2个版本的demo:OCDemo;SwiftDemo

相关文章

  • MVP工程架构入门 swift版本

    MVP架构的入门初学篇: MVC搞的越来越难做写测试,是时候换一个啦!学习一下MVP的基础概念,做了一个入门的...

  • Google官方android架构todo-mvp(译)

    todo-mvp架构项目地址 todo-mvp 这个app版本被称作todo-mvp,给这个工程的其他示例提供一个...

  • swift MVP

    【Swift实现代码】iOS架构模式之MVP 1.什么是MVP? 1.1 模型 (Model):负责处理数据的加载...

  • MVC和MVP

    Android mvp 架构的自述 如何更高效的使用MVP以及官方MVP架构解析 老的MVC架构 新的MVP架构 ...

  • Swift MVP架构实践

    前言 MVP 全称:Model-View-Presenter MVP架构模式是从MVC演变过来的(很多架构都是的)...

  • Android MVP的简单使用

    1.前言 2.MVC架构 1.MVC架构优缺点 3.MVP架构 1. MVP架构优缺点 四.MVP架构实战 MVP...

  • SWIFT_VERSION '3.0' is unsupport

    把项目工程和Pods工程里的Swift Language Version里的Swift版本号都改了

  • android MVP架构

    一、MVP介绍 MVP的架构组成如图1所示MVP架构.png相对于MVC架构,MVP架构对应的内容有了如下调整: ...

  • Android主流框架面试准备

    MVP Android MVP架构搭建史上最全的Android MVP模式架构面试题集锦Android面试题-架构...

  • iOS 架构模式--解密 MVC,MVP,MVVM以及VIPER

    iOS 架构模式--解密 MVC,MVP,MVVM以及VIPER架构 iOS 架构模式--解密 MVC,MVP,M...

网友评论

    本文标题:MVP工程架构入门 swift版本

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