MVC是開發所有軟件所必須涉及的基本幾個划分
M主要負責數據與模型,
V主要負責顯示
C主要負責交互與業務
所以不管是前端還是后端,都是有MVC的。
MVC是一個對於軟件簡單的抽象,不管是M還是V,還是C都是有很多細分的。
所以理解MVC是一種業務抽象是非常重要的。
前端MVC
前端流行的MVVM就是對於前端MVC結構的一次重新定義。
特別是angular這樣的框架出來后,前端的MVC就非常完善了。
再加上SPA與混合APP的流行,MVC在前端就是一個完整的體系。
同理后端一樣是有MVC的。
后端MVC
基本上所有的后端框架都是聲稱支持MVC的。所以相對於前端來講,后端的MVC是更加清楚的。
后端的
M主要是指數據庫,文件等
V主要是指包括HTML模板,HTML的組裝,其它的動態UI顯示技術
C是一樣的,但是一般的象HTTP請求都包括了路由請求,很多HTTP模式化的業務都抽象成了對應的專用軟件,比如web server, session 服務器, 隊列。C當然包括業務邏輯。而業務邏輯本身就有很多種。包括搜索引擎,機器學習等,都可以歸於業務邏輯。
但是很可惜的是,最近因為前端技術的飛速發展,導致很多人又開始概念不清了。
將Web前端與服務器View混為一談,將服務器前后端與Web前后端混為一談。
前端一般是我們對Web前端簡稱,並非是對所有的東西的簡單稱。
但是前端本身是一個可以非常廣泛的概念,只要是東西必定是有前后端的。一支筆還有前后端。
你非要將服務器(通常所說的后端技術)前端也稱為前端,然后與Web前端混淆,我相信你只是在耍流氓。
所以我不太建議后端開發體系中非要再搞一個所謂的服務器前端。
下面簡單將前后端與MVC作個歸納:
前端 | 后端 | |
---|---|---|
M | json xml html數據 等 | 數據庫 文件 等 |
V | 模板引擎 模板片段等 | HTML模板 |
C | JS 業務邏輯 HTTP請求交互(AJAX, JSONP, WEBSOCKET) | HTTP請求路由 搜索引擎 數據分析 文件服務 |
- 頂
- 1
- 踩