iT邦幫忙

第 12 屆 iT 邦幫忙鐵人賽

DAY 14
0
Modern Web

Ruby on Rails面試題挑戰系列 第 14

Ruby on Rails面試題挑戰 Day14 - 什麼是MVC?

What is MVC?
什麼是MVC?


MVC是Model-view-controller的縮寫,是一種軟體設計模式(software design pattern),它將程式邏輯及資料處理分成下列三個東西

  • Model
    MVC的核心,主要管理與資料及邏輯。

要注意的是Model並不是資料庫哦,Model像是一個抽象層,會協助我們將我們所輸入的程式碼轉成SQL語法來與資料庫溝通

  • View
    管理畫面,資料要如何呈現,例如HTML檔案。

  • Controller
    接受使用者的輸入,且準備資料給model,收到model的資料後再轉給view。

那我們為什麼要那麼麻煩的使用MVC呢?

  • MVC的優點:同步開發

MVC將應用程式的不同元素切分,開發者可以在不影響其他人的狀況下同步開發。例如團隊中分成前端與後端工程師,後端工程師在不知道畫面下,可以設計資料結構,前端也能在資料結構完成之前,開始著手畫面的設計與呈現。

Rails就是根據MVC的架構來設計的,在前一篇我們介紹了Routes,裡面會記載對應的Controller以及action,會根據情況,將資料給model,model會幫我們去資料庫撈資料再回傳給controller,最後再轉交給view來呈現。

你可以這樣回答:

MVC是Model-view-controller的縮寫,是一種軟體設計模式(software design pattern)。Model掌管資料及邏輯,View則顯示畫面,controller則是接應使用者的input來準備資料給model或view。

參考資料

1.wiki- MVC

2.為你自己學 Ruby on Rails - Model、View、Controller 三分天下


上一篇
Ruby on Rails面試題挑戰 Day13 - 不要使用“resources”的情況下,定義一條route給create action
下一篇
Ruby on Rails面試題挑戰 Day15 - Active Record是什麼?
系列文
Ruby on Rails面試題挑戰30

尚未有邦友留言

立即登入留言