一、MVVM是为viewcontroller瘦身?简单来说,MVVM的横空出世是为了解决MVC模式下的viewcontroller”瘦身”。 在MVC模式下,有一个显著不好的地方,就是viewcontroller即C层,有人称之为Massive View Controller(臃肿的视图控制器),为什么称之为臃肿的视图控制器?原因其实很简单,我们一直都把数据请求服务层放到controller,包
转载
2023-09-01 21:40:48
76阅读
1.MVVM浅析MVC是构建iOS App的标准模式,是苹果推荐的一个用来组织代码的权威范式,市面上大部分App都是这样构建的,具体组织模式不细说,iOS入门者都比较了解(虽然不一定能完全去遵守),但其几个不能避免的问题却是很严重困扰开发者,比如厚重的ViewControlller、遗失的网络逻辑(没有属于它的位置)、较差的可测试性等。因此也就会有维护性很强、耦合性很低的一种新架构MVVM(MVC
转载
2023-08-03 16:40:40
86阅读
# 实践iOS RAC MVVM指南
## 一、流程图
```mermaid
flowchart TD
A[准备工作] --> B[创建ViewModel]
B --> C[创建ViewController]
C --> D[绑定ViewModel]
D --> E[展示数据]
```
## 二、整体流程
| 步骤 | 描述 |
| --- | --- |
本文译自 :Introduction to MVVM by Ash Furrow2011年, 我在500px得到了第一份iOS相关的工作。 之前几年我在大学的时候就做过iOS的项目,但是,这是我第一份正式的iOS工作。我以核心开发人员的身份被招来做一个设计优美的iPad app,仅过了几个周,我们就交付了1.0 并继续迭代,加入了更多的特性,同时,代码也越来越多。有些时候,我也不知道我
转载
2023-12-25 22:23:30
30阅读
MVC 模式MVC 概念Modal 模型对象:模型对象封装了应用程序的数据,并定义操控和处理该数据的逻辑和运算。模型(Model)实际上考虑的是“什么”的问题,即你的程序是什么?以纸牌匹配游戏为例子,模型就是设计这个游戏怎么玩,花色匹配,数值匹配得多少分,等逻辑问题。以及这个游戏里的类,如:纸牌,牌堆等类都属于模型里面的东西。以上都是独立于UI且在模型中的。Controller 控制器对象:控制器
转载
2023-08-22 19:26:55
54阅读
一、关于经典模式MVC的简介MVC是构建iOS App的标准模式,是苹果推荐的一个用来组织代码的权威范式,市面上大部分App都是这样构建的,具体组建模式不细说,iOS入门者都比较了解(虽然不一定能完全去遵守),但其几个不能避免的问题却是很严重困扰开发者比如厚重的ViewController、遗失的网络逻辑(没有属于它的位置)、较差的可测试性等因此也就会有维护性较强、耦合性很低的一种新架构MVVM
转载
2023-07-13 18:46:16
76阅读
# iOS MVVM 不用RAC 如何实现双向绑定
在iOS开发中,MVVM(Model-View-ViewModel)是一种常用的架构模式,它有助于分离视图逻辑与业务逻辑,提高代码的可维护性和可测试性。本文将探讨如何在MVVM架构中实现双向绑定,而不依赖ReactiveCocoa(RAC)。我们将通过一个具体的例子来说明如何进行数据的双向绑定,以便用户在界面中修改数据后,这些修改能够即时反映到
http://ios.jobbole.com/91286/
转载
2023-05-22 11:16:30
95阅读
美团点评技术沙龙Online:美团点评技术团队推出的线上分享课程,每月2-3期,我们采用视频直播形式,邀请来自美团点评的技术专家,面向互联网技术从业人员,搭建线上技术分享...
转载
2021-05-11 17:22:35
415阅读
项目中如果没有使用swift的话使用cocoapods 导入pod ‘ReactiveObjC’, ‘~> 3.0.0’然后在导入头文件ReactiveObjC.h就可以使用了,3.0.0以上的版本支持了swift,如果你是纯OC工程,不建议使用3.0.0以上的版本。RACSignal:顾名思义,信号类,signal本身不具备发送信号的能力,下面通过代码来看看。在创建RACSignal中先说
前言:2015年谷歌I/O大会上介绍了一个数据绑定框架DataBinding。2016年,2017年毫无意外成了项目实战中主流框架。使用它我们可以轻松实现MVVM(模型-视图-视图模型)模式,来实现应用之间数据与视图的分离、视图与业务逻辑的分离、数据与业务逻辑的分离,从而达到低耦合、可重用性、易测试性等好处。而使用DataBinding不仅减少了findView
转载
2023-07-30 21:29:22
221阅读
本文主要代码使用 RAC+MVVM 以及其他一些第三方库,开发一个图床App。
转载
2021-12-17 15:22:39
367阅读
本文章是基于上一篇分析mvp 基础上讲的,不懂如何下载demo的朋友看我这一篇文章https://www.jianshu.com/p/2536322f7232VVM体系结构中的ViewModel对MVP体系结构中的Presenter起着类似的作用。这两种体系结构的不同之处在于View分别与ViewModel或Presenter进行通信:当应用程序修改MVVM体系结构中的ViewModel时,Vie
转载
2023-11-15 22:10:20
162阅读
Reactive Cocoa(RAC)是一个支持FRP(函数响应式编程)的框架;详细的就不再多介绍了,直接说说在我们开发中一些RAC的常见用法;替换代理场景:一个View中放着一个Button
当我们点击Button的时候,视图控制器如果需要知道这个Button被点击了,一般我们需要写一个代理去通知控制器。
在RAC中我们不需要写代理,我们需要这样做:
[[_redView rac_signa
框架对整个应用程序的作用非常重要,记得有个朋友说过:用什么框架啊,好好封装一下不就行了吗?但我的理解是,好的封装绝对可以事半功倍,但是如果不按照一定的规则进行封装就会让人有些难以理解了,维护代码的人要疯掉了,我认为架构就是规定怎么去封装的。 在拜读的大神们对框架的构思之后,我决
原创
2016-06-23 01:00:52
2070阅读
RAC是ReactiveCocoa家族一员。这是一个响应式家族,在我看来RAC完全配得上:“编程思想之集大成者” 这个称号!在内部封装的函数式、面向对象、响应式、封装很多关于iOS原生,最大限度便利的开发者使用!很多博客都说RAC好用,但发现很少有如何学习RAC的文章。不知道该从哪入手,在这里小编也整理了一份关于RAC的路线图,希望对读者有所帮助。不好勿喷!一:RAC初级用法:RAC在实际开发中的
转载
2023-07-14 14:20:00
115阅读
什么是MVVM?MVVM是MVC的增强版,实质上和MVC没有本质区别,只是代码的位置变动而已,这是我对MVVM的定义,如果你不知道什么是MVC,请往下看。MVC简要如果你做过iOS开发,相信你对这几个东西一定很熟:Model、View、Controller,分别表示数据、视图、控制器。当然,其他方向的开发人员应该不也会太陌生,其实这只是一种设计思想,具体用什么语言和做什么开发并不重要。所谓MVC便
转载
2023-09-21 17:04:25
151阅读
最近看到新浪微博上以及iOS开发的论坛里面谈到MVVM设计模式,所谓MVVM就是Model-View-ViewModel的缩写,关于MVVM的概念,这里我不想过多的介绍,有很多介绍的很详细的博文,这里我们直奔主题,谈一谈MVVM如何利用到项目中去。 首先我们在建立项目中的时候可分为如下模块,Model,View,Vi
运用了一些第三方库运用的代码是OC代码。运用了Masonry布局,AFNetworking网络请求,MJExtension,SDWebImage,MJRefresh。MVC我的mvc可能和主流的不太一样,也许和我之前用安卓的有一定的影响,我看别人写的mvc M是模型 V层是view C层是控制层。这之间的关系是紧密联系的M层负责对象模型的创建 V层用来处理绘制各控件 C层是用来连接M与V层。但是我
转载
2023-07-13 18:39:33
65阅读
一、MVC MVC是iOS经典的架构模式,也是苹果推荐的架构方式,以至于苹果的每个业务模块都是以controller为入口。 MVC这种经典的架构模式确实方便数据的交互,这种架构将Model-View-Controller巧妙的联系在一起,完成数据的交互。这种设计模式的关键在Controller,Model的属性数值通过Controller展示在View;而View是直接与用户交互的界面,它上
转载
2023-08-19 15:44:06
81阅读