MVC理解
https://stackoverflow.com/questions/5863870/how-should-a-model-be-structured-in-mvc/5864000#5864000
https://stackoverflow.com/questions/16356420/mvc-for-advanced-php-developers/16356866#16356866
https://nikic.github.io/2011/12/27/Dont-be-STUPID-GRASP-SOLID.html
MVC為一個設計模式,Model為一個層,不是一個物件或是一個class,包含業務邏輯跟資料存取,Controller為一個交互層,只負責接收進來的資料,傳到Model做處理,所以Controller只是薄薄的一層,View為顯示介面,不包含計算邏輯。
Model包含三個部分:
Domain Objects:
表示業務邏輯的物件。
Data Mappers:
資料持久化,不管來源從哪邊來,可能是DB、API、檔案。
Services:
Domain Objects和Data Mappers的交互層,可以避免一些Domain Object的業務邏輯進入Controller。
留言
張貼留言