美文网首页
MVVM的一些准则

MVVM的一些准则

作者: 若雨千寻 | 来源:发表于2020-04-16 16:36 被阅读0次
MVVM 的基本概念
- 在MVVM 中,view 和 view controller正式联系在一起,我们把它们视为一个组件,
  Controller可以当作一个重量级的View(负责界面切换和处理各类系统事件)。
- view 和 view controller 都不能直接引用model,而是引用视图模型(viewModel)
- viewModel 是一个放置用户输入验证逻辑,视图显示逻辑,发起网络请求和其他代码的地方, 
  它的职责之一就是作为一个表现视图显示自身所需数据的静态模型;但它也有收集, 解释和转换那些数据的责任。
  它是从 MVC 的 controller 中抽取出来的展示逻辑,负责从 model中获取 view 所需的数据,
  转换成 view可以展示的数据,并暴露公开的属性和命令供 view 进行绑定。
- 使用MVVM会轻微的增加代码量,但总体上减少了代码的复杂性。
MVVM 的注意事项
- viewController 尽量不涉及业务逻辑,让 viewModel 去做这些事情。
- viewController 只是一个中间人,接收 view 的事件、调用  viewModel 的方法、响应 viewModel 的变化。
  一方面负责View和ViewModel之间的绑定,另一方面也负责常规的UI逻辑处理。
- view 引用viewModel ,但反过来不行(即不要在viewModel中引入#import UIKit.h,
  任何视图本身的引用都不应该放在viewModel中)(PS:基本要求,必须满足)
- viewModel 引用model,但反过来不行
- viewModel 绝对不能包含视图 view(UIKit.h),不然就跟 view 产生了耦合,不方便复用和测试。
- viewModel之间可以有依赖。
- viewModel避免过于臃肿,否则重蹈Controller的覆辙,变得难以维护。

只看文字比较晦涩难懂,大家可以考虑以下的参考文章,里边有具体点示例代码

参考链接:
聊聊iOS开发之MVVM的架构设计
iOS 关于MVVM Without ReactiveCocoa设计模式的那些事
iOS 关于MVC和MVVM设计模式的那些事

相关文章

  • MVVM的一些准则

    MVVM 的基本概念 MVVM 的注意事项 只看文字比较晦涩难懂,大家可以考虑以下的参考文章,里边有具体点示例代码...

  • MVVM+KVC+SizeClass学习概括

    一、MVVM 了解了有关MVVM设计模式的准则,将业务逻辑,数据处理,界面显示的处理都放在ViewModel中,并...

  • 一些准则

    1、尽量放松,尽量不让自己精神上、身体上有丝毫的别扭,这种状态下,才是最具有创造力的。 2、不要停止思考,不要让自...

  • 经济分析与价值观——读《经济解释》(二十三)

    前文主要提了经济准则,所以经济准则中的“经济”是限定“准则”的: 在有关“准则”这话题上,一些是属经济学内的分析,...

  • iOS 关于MVVM的一点理解和实战总结

    MVVM是近几年一直比较火的架构模式,近期项目使用RAC框架+MVVM写项目,对MVVM这种架构模式有了一些理解。...

  • MVVM 双向绑定的实现

    这篇文章主要记录学习 JS 双向绑定过程中的一些概念与具体的实现 MVVM 具体概念 MVVM 中有一些概念是通用...

  • MVVM结合ReactiveCocoa在项目实践中的理解和总结的

    关于MVC和MVVM在项目实践中的理解和总结的一些经验 首先来转载一些MVC和MVVM的一些概念,网上一大堆,就不...

  • MVVM的业务实践

    主要讲述的是MVVM在一些具体场景的业务实践 1. 首先讲一点是当我们讲MVVM的时候很多人觉得 MVVM的主要作...

  • 技术在于交流,知识在于收集(七)

    收集的一些iOS开发技术博客与牛人共同进步 RAC/MVVM RAC/MVVM个人学习资源汇总 ReactiveC...

  • iOS MVVM的VC跳转

    在这里不再赘述MVVM的定义以及原理,书写方式。在这里我想分享一些我使用MVVM的时候的一些自己的经验和心得。希望...

网友评论

      本文标题:MVVM的一些准则

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