iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 20
0
自我挑戰組

菜比八iOS程式開發30天自我挑戰系列 第 20

Swift 4.2 Day-20 MVC 設計模式

https://ithelp.ithome.com.tw/upload/images/20181104/20110801ZEqjXGZqho.png

Cocos 內建有許多中設計模式,這些設計模式存在的目的,是要讓身為開發者的我們更能堅持下去,及更有生產力。三種主要的設計模式,第一個是 model - view - controller ( MVC ) 模式。這也是建構 Cocoa 和 Cocoa Touch 的主要模式;delegation 模式讓我們的程式和 Cocoa 自由的決定由誰執行什麼程式碼,還有一個是 notification 模式,讓我們的程式碼監看 app 中發生的重要事件。

Model - View - Controller

Model - View - Controller 設計模式是 Cocoa 的主要設計模式之一,讓我們看看這三個構成元件:

Model:
是一中內含資料的物件,或者負責儲存、管理與輸出「資料」到期他物間的物件。資料可以很單純,例如:一個字串,或是複雜到像一整個資料庫。Model 的主要目的是儲存資料並提供給其他物件使用,他們並不管資料給出去以後怎麽被使用,他們只在意資料如何怎麽被儲存。

View:
和使用者直接互動的元件,提供使用者租要或是取得使用者的輸入。view 並不負責管理要顯示的資料,view 只負責「顯示」給使用照噁看。當使用者與程式進行互動時,view 負責通知其他物件。就像資料與 model 的關係一樣,而 veiw 在通知應用程式裡的其他部分之後,不會在乎接下去會發生什麼事情因為他的任務已經結束了。

Controller:
Controller 是 model 與 view 之間的橋樑,內容包含被稱為「業務邏輯」( business logic )的部分,也就是應用程式面對使用者的操作時,該怎麼回應的邏輯。
Controller 至少要回應 model 取得資訊的要求,並將該資訊提供給 view;當 Controller 被 view 告知使用者互動發生時,也負責去通知 model 。

清楚各個物件的職掌,使得專案結構保持清楚,在修改應用程式時也會比較容易。如果使用者想要在應用程式加入其他功能,就應該將此功能的程式碼加入到 Controller 中。


上一篇
Swift 4.2 Day-19 Generics 泛型
下一篇
Swift 4.2 Day-21 delegate 委派
系列文
菜比八iOS程式開發30天自我挑戰30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言