[请益] MVC求观念指导?

楼主: RINPE (RIN)   2018-05-02 21:35:28
MVC的Model是说要做到数据的处理
V就是UI相关的设定(frame、color 之类的)
C就是接收V传的Event,并要求M做数据处理
其实有点不太懂M这部分要做到什么地步
看很多教学都只有几个变量
Class Model{
var name:String
var number:Int
Init(){}
}
类似这样
那一般做api的解析时,会在M里面做吗(同个class)
还是多一个api class 解析把response 的结果再提供M处理后提供给C?
哪个会比较好
Github 上有推荐的架构实作吗?
再麻烦各位指教了
作者: shinrenpan (iOS5)   2018-05-02 21:57:00
可以 google 胖model 或是瘦model区别
作者: uranusjr (←這人是超級笨蛋)   2018-05-02 21:57:00
都可以, MVC 只是一个原则, 没有规定一定要怎样, 只要你觉得合理就好 (至于怎样合理就只能靠经验)根据这三个部份的解读不同也衍生出 MVVM MVCS MVP 等等
作者: yuanruo (罪を憎んで人を憎まず)   2018-05-03 03:11:00
逻辑拉到model做只是减轻VC负担, M只定义就VC一大堆逻辑又因为太多逻辑放到M作就有人开始拆开~就演变成MVVM等只要做到解藕~复用性高~可测试~基本上就是不错的架构了
作者: powerwolf543 (NixonShin)   2018-05-06 01:36:00
Model最好是不要有任何逻辑
作者: tom19830924 (Tom Hsu)   2018-05-09 10:25:00
我想藉这篇问一下 MVP与MVVM架构差在哪边之前我将VM与V之间使用block callback 以为就是MVVM结果被人说这叫MVP模式 MVVM架构应该是要binding可是binding不是也算是一种形式上的callback吗
作者: yuanruo (罪を憎んで人を憎まず)   2018-05-10 16:30:00
ViewModel是用Observer方式用view去Subscript它当viewmodel变动时,View会跟据observer变动UIcallback机制就是反过来做了 所以是MVP的概念
作者: G888888   2018-05-10 17:54:00
如果model不要有逻辑,那逻辑会在哪做呀~?
作者: ch30529 (主人)   2018-05-11 21:54:00
Model Controller啊官方手册有写
作者: G888888   2018-05-12 00:00:00
ViewController 也算是ModelController吗?还是说另外开一个swift档专门处理
作者: ch30529 (主人)   2018-05-14 12:34:00
另外开一个
作者: panga0820 (Will)   2018-05-18 10:36:00
我建议,再开一个 class 专门处理 parser 这件事会比较好。假如您的 model 定义是资料,那就不会跟 parser有关系!
作者: Blueshiva (龙野南云)   2018-05-18 11:53:00
如果使用Codable,那parser基本上就会绑在model里了
作者: panga0820 (Will)   2018-05-18 23:33:00
Hi Blueshiva ,Model 继承 Codeable,parser 不是也不会跟 model 有关系不是吗?

Links booklink

Contact Us: admin [ a t ] ucptt.com