非常多的Web框架都實踐一個叫做MVC的軟體架構設計模式,將軟體分成三個部分:
- Model物件包裝了資料與商業邏輯,例如操作資料庫
- View表示使用者介面,顯示及編輯表單,可內嵌Ruby程式的HTML
- Controller負責將資料送進送出Model,處理從外界(也就是瀏覽器)來的HTTP Request請求,與Model互動後輸出View(也就是HTML)
這張圖示中的執行步驟是:
- 瀏覽器發出HTTP request請求
- 負責處理的Controller操作Model資料
- Model存取資料庫
- Controller將得到的資料餵給View樣板
- 回傳最後的HTML成品給瀏覽器
透過MVC模式,我們可以有系統的組織程式碼,並且分離商業邏輯和使用者介面,讓前端與後端開發者可以獨立作業,也讓程式碼有著一致性的結構,檔案位置清楚,這些慣例Web框架都幫你想好了。有了程式規範,也就比較容易維護開發了。