MVC是由三種主要的Object發展而成的設計模式
Model是存放data的地方,像是model物件、管理、解析或networking code都可以寫在這裏。
View是App的外觀,通常不太用於特定邏輯,存放可以重複使用的元件。例如UITableViewCell,可以被重複利用在不同的UITableView裡。
Controller是通過delegation pattern在View跟Model之間進行溝通,在正常情況下,Controller不會知道自己控制了哪個View。因為Controller是透過protocol去進行溝通。最常見的例子是UITableView透過UITableViewDataSource去與其他data source做處理。
MVC在運作的行為如下圖
在MVC設計模式中Controller Object在裡面扮演了調解者,在Model跟View之間控制傳達數據的流向。通過應用系統的Controller可以使Model的資料傳遞到View。此外,View Object透過使用者的動作來實現功能。