Model View Controller或MVC(俗稱MVC)是用于開發(fā)Web應(yīng)用程序的軟件設(shè)計(jì)模式。Model View Controller模式由以下三個(gè)部分組成-
Model
?這是負(fù)責(zé)維護(hù)數(shù)據(jù)的模式的最低級(jí)別。
View
?它負(fù)責(zé)向用戶顯示全部或部分?jǐn)?shù)據(jù)。
Controller
?它是控制模型與視圖之間交互的軟件代碼。
MVC之所以受歡迎是因?yàn)樗鼘?yīng)用程序邏輯與用戶界面層隔離開來,并支持關(guān)注點(diǎn)分離??刂破鹘邮諏?duì)應(yīng)用程序的所有請(qǐng)求,然后使用模型來準(zhǔn)備視圖所需的任何數(shù)據(jù)。然后,視圖使用控制器準(zhǔn)備的數(shù)據(jù)來生成最終的可顯示響應(yīng)。MVC抽象可以如下圖形表示。
該模型負(fù)責(zé)管理應(yīng)用程序數(shù)據(jù)。它響應(yīng)來自視圖的請(qǐng)求以及來自控制器以更新自身的指令。
特定格式的數(shù)據(jù)表示,由控制器決定呈現(xiàn)數(shù)據(jù)觸發(fā)。它們是基于腳本的模板系統(tǒng),例如JSP,ASP,PHP,并且非常易于與AJAX技術(shù)集成。
控制器響應(yīng)用戶輸入并在數(shù)據(jù)模型對(duì)象上執(zhí)行交互??刂破鹘邮蛰斎耄瑢?duì)其進(jìn)行驗(yàn)證,然后執(zhí)行修改數(shù)據(jù)模型狀態(tài)的業(yè)務(wù)操作。
AngularJS是一個(gè)基于MVC的框架。在接下來的章節(jié)中,我們將看到AngularJS如何使用MVC方法。