MVC:
模型層(model)、視圖層(view)、控制層(controller)
-
Model:即數據模型,用來包裝和應用程序的業務邏輯相關的數據或者對數據進行處理,模型可以直接訪問數據。
View:視圖用來有目的顯示數據,在視圖中一般沒有程序上的邏輯,為了實現視圖上的最新功能,視圖需要訪問它監視的數據模型。
Controller:控制器調控模型和視圖的聯系,它控制應用程序的流程,處理事件並作出響應,事件不僅僅包括用戶的行為還有數據 模型上的改變。通過捕獲用戶事件,通知模型層作出相應的更新處理,同時將模型層的更新和改變通知給視圖,使得視圖作出相應改變。因此控制器保證了視圖和模 型的一致性。
代表的框架有:AngularJS、BackboneJS(目前使用較多的是其View層~)、Ember.js、Javascript MVC、Knockout.js 等
Backbone. js 可以靈活地解決應用中層次分離問題,並且支持持久層和 REST 同步服務、models、views、事件驅動、模板和定位等。它允許 model 修改后 View 自動更新。而且很多大型公司都使用它來構建應用,並且有非常好的社區提供支持。
Angular JS 是由 Google 創建的一種 JS 框架,它可以擴展應用程序中的 HTML 詞匯,從而在 Web 應用程序中使用 HTML 聲明動態內容。支持快速測試、URL 管理和分離的 MVC。