作者RINPE (RIN)
看板MacDev
標題[請益] MVC求觀念指導?
時間Wed May 2 21:35:28 2018
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 上有推薦的架構實作嗎?
再麻煩各位指教了
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 219.68.202.3
※ 文章網址: https://webptt.com/m.aspx?n=bbs/MacDev/M.1525268131.A.737.html
1F:→ shinrenpan: 可以 google 胖model 或是瘦model區別 05/02 21:57
2F:→ uranusjr: 都可以, MVC 只是一個原則, 沒有規定一定要怎樣, 只要你 05/02 21:57
3F:→ uranusjr: 覺得合理就好 (至於怎樣合理就只能靠經驗) 05/02 21:57
4F:→ uranusjr: 根據這三個部份的解讀不同也衍生出 MVVM MVCS MVP 等等 05/02 21:59
5F:→ yuanruo: 邏輯拉到model做只是減輕VC負擔, M只定義就VC一大堆邏輯 05/03 03:11
6F:→ yuanruo: 又因為太多邏輯放到M作就有人開始拆開~就演變成MVVM等 05/03 03:11
7F:→ yuanruo: 只要做到解藕~復用性高~可測試~基本上就是不錯的架構了 05/03 03:13
8F:→ powerwolf543: Model最好是不要有任何邏輯 05/06 01:36
9F:→ tom19830924: 我想藉這篇問一下 MVP與MVVM架構差在哪邊 05/09 10:25
10F:→ tom19830924: 之前我將VM與V之間使用block callback 以為就是MVVM 05/09 10:26
11F:→ tom19830924: 結果被人說這叫MVP模式 MVVM架構應該是要binding 05/09 10:27
12F:→ tom19830924: 可是binding不是也算是一種形式上的callback嗎 05/09 10:27
13F:推 yuanruo: ViewModel是用Observer方式用view去Subscript它 05/10 16:30
14F:→ yuanruo: 當viewmodel變動時,View會跟據observer變動UI 05/10 16:31
15F:→ yuanruo: callback機制就是反過來做了 所以是MVP的概念 05/10 16:32
16F:推 G888888: 如果model不要有邏輯,那邏輯會在哪做呀~? 05/10 17:54
17F:推 ch30529: Model Controller啊官方手冊有寫 05/11 21:54
18F:推 G888888: ViewController 也算是ModelController嗎?還是說另外開 05/12 00:00
19F:→ G888888: 一個swift檔專門處理 05/12 00:00
20F:推 ch30529: 另外開一個 05/14 12:34
21F:推 panga0820: 我建議,再開一個 class 專門處理 parser 這件事會比 05/18 10:36
22F:→ panga0820: 較好。假如您的 model 定義是資料,那就不會跟 parser 05/18 10:36
23F:→ panga0820: 有關係! 05/18 10:36
24F:推 Blueshiva: 如果使用Codable,那parser基本上就會綁在model裡了 05/18 11:53
25F:推 panga0820: Hi Blueshiva ,Model 繼承 Codeable,parser 不是也 05/18 23:33
26F:→ panga0820: 不會跟 model 有關係不是嗎? 05/18 23:33