理解MVC、MVVM、RAC开发模式
来源:互联网 发布:淘宝外宣语言 编辑:程序博客网 时间:2024/05/16 08:54
一直以来都是在用Apple官方给出的开发模式mvc进行开发工作,而受到各方大神的影响开始逐步了解、学习MVVM、RAC。现在将自己的一些了解做整理
MVC:Controller是控制器层,它是核心,即对View层进行操作也对Model层进行操作,但是View层和Model层又互相没有关联。View只负责页面的展示,Model只是数据的存储,这样就导致Controller要处理数据,还负责view的管理以及事件的传递,连网络请求是控制器在做。
缺点: MVC比较明显的缺点就是如果业务复杂起来,再加上其他乱七八糟的验证,controller就会变得很大,越来越难以维护,变的臃肿。
MVVM:既然MVC会导致越来越臃肿,越来越难以维护,那相对于比较复杂、庞大的项目就不太合适了,为了便于维护,后面就出来了MVVM。ViewModel是将逻辑代码、网络请求等都写入其中,说白了就是新加了一个ViewModel来分担Controller压力,将部分代码在这里实现,这就达到减少Controller的臃肿问题。
例如这样:
既然MVVM可以调用网络、更改UI,那么它如何将数据回调到Controlller中呢,或许我们会有我们比较熟悉机制KVO方法、通知、Block、代理等,但是这些都显得有点厚重,ReactiveCocoa能解决这些问题。
RAC:ReactiveCocoa 可以说是结合了函数式编程和响应式编程的框架,也可称其为函数响应式编程框架,关于它知识点是真的太丰富了,自己了解得只能说是冰山一角,后续我会专门针对RAC进行讲解。MVVM+RAC能更好的解耦,减少代码复杂度,使代码层次分明、逻辑清晰便于维护升级。
- 理解MVC、MVVM、RAC开发模式
- 理解MVC模式和MVVM
- 对MVC、MVVM开发模式的理解和总结
- 理解MVC,MVP和MVVM设计模式
- 理解MVC,MVP和MVVM设计模式
- MVC与MVVM设计模式理解
- 理解MVC,MVP和MVVM设计模式
- 理解MVC,MVP和MVVM设计模式
- 理解MVC,MVP和MVVM设计模式
- 理解MVC,MVP和MVVM设计模式
- 理解MVC,MVP和MVVM设计模式
- 理解MVC,MVP和MVVM设计模式
- 理解MVC,MVP和MVVM设计模式
- 理解MVC,MVP和MVVM设计模式
- iOS开发中MVC、MVVM模式详解
- Android 基于MVC的MVVM模式开发
- 开发模式总结:MVC、MVP&MVVM
- MVC、MVP、MVVM三种开发模式
- java交互:通知和等待
- Java开发网站总结——Servlet实现图片上传、验证码实现
- jQuery.getJSON() 函数详解
- “J.U.C”:CLH队列锁 (r)
- springmvc核心原理
- 理解MVC、MVVM、RAC开发模式
- iOS多线程编程之NSOperation和NSOperationQueue的使用
- DocumentHelper
- Linux中的configure和make
- HBase常用操作
- 23 种设计模式详解 java
- OJ------统计每月兔子总数
- final关键字
- 获得键盘输入的方法Scanner