iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 14
1

MVC架構

*英文發音
首先來聽聽英文發音~。

Route
Yes

Model
Yes

View
Yes

Controller
Yes

什麼是MVC

是這樣子的,Rails這個網站開發架構,引入一種軟體架構模式-MVC模式(Model–view–controller)。

其便是將軟體分為三個部分:

  • 模型(Model)
  • 畫面(View)
  • 控制器(Controller)

為什麼要使用這套模式呢?他的優點在於:

  • 分工容易:每個部分各司其職,能讓程式的架構更加直覺,也因此更容易進行分工。
  • 開發慣例:另一個好處是,Rails的專案皆是遵循MVC的慣例結構,因此不同程度的設計者來開發,差異不會太大。Controller通常會放在app/controllers目錄裡,Model也會放在app/models目錄裡。協同性高。

Model View Controller

Model 模型

用於封裝與應用程式的商業邏輯(Business logic)相關的資料以及對資料的處理方法,處理資料庫的操作,會幫我們去資料庫調資料。

View 畫面

負責將資料傳遞給使用者,並處理畫面的呈現。

Controller 控制器

負責接收從外部 (使用者介面) 傳來的訊息並作出回應,指派工作,是 Model 和 View 的中間人,起到不同層面間的組織作用。

圖解MVC


圖片來源:龍哥的《為你自己學Roby on Rails》

  1. 當使用者輸入網址,連到你的網站時,會送到路徑對照表(Route)。
  2. 當Route解析網址後,會將任務轉給指定的Controller。Controller根據任務需求與View互動,或是透過Model取出database裡的資料。
  3. Model本身不是資料庫,但他可以幫我們去資料庫調資料,再回傳給Controller,並透過View顯現畫面唷。

參考資料

  • 為你自己學Ruby on Rails

上一篇
Day 13 : 學習網站開發,Ruby on Rails來了!
系列文
Ruby名詞解釋總匯14
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言