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版本

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