RxSwift常用框架、MVVM

本文探讨了MVVM架构模式相对于MVC的优势,解释了MVVM各层的职责,并通过示例展示了如何在Swift中使用MVVM进行输入验证,强调了在复杂交互场景下MVVM能带来的代码可读性和可维护性的提升。同时提到了RxSwift在MVVM中的应用。
摘要由CSDN通过智能技术生成

函数响应式编程 清晰简洁、易读、易维护的代码,下面我们看下 RxSwift 的最佳搭档:MVVM

MVVM

原先常用的架构:MVC

image

  • Model:数据层。负责读写数据,保存 App 状态等

  • Controller:业务逻辑层。负责业务逻辑、事件响应、数据加工等工作

缺点:

  • ViewController 既扮演了 View 的角色,又扮演了 ViewController 的角色
  • 而 Model 在 VIewController 中又可以直接与 View 进行交互
  • 当 App 交互复杂的时候,就会发现 ViewController 将变得十分臃肿,大量代码被添加到控制器中,使得控制器负担过重。
MVVM

image

优点:
  • 可以对 ViewController 进行瘦身
  • 实现逻辑视图的复用。比如一个 ViewModel 可以绑定到不同的 View 上,让多个 View 重用相同的视图逻辑。
  • 而且使用 MVVM 可以大大降低代码的耦合性,方便进行单元测试以及维护,也方便多人协作开发(比如一个人负责逻辑实现,一个人负责 UI 实现)。

缺点:

  • 相较于 MVC,使用 MVVM 会轻微的增加代码量,但是总体上减少了代码的复杂性。
  • 还有就是有一定的学习成本(如何数据绑定等)。

作为一个开发者,有一个学习的氛围跟一个交流圈子特别重要,这是我的iOS交流圈: 不管你是小白还是大牛欢迎入驻!!
分享内容包括跳槽面试资源、逆向安防、算法、架构设计、多线程,网络进阶,还有底层、音视频、Flutter等等…

自己根据梳理网络来的的开发经验总结的学习方法,无偿分享给大家。更多资源,需要的话都可以自行来获取下载。
+裙:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值