1. 程式人生 > >前後端分離 與 不分離

前後端分離 與 不分離

 

前後端不分離

 

      在前後端不分離的應用模式中,前端頁面看到的效果都是由後端控制,由後端渲染頁面或重定向,也就是後端需要控制前端的展示,前端與後端的耦合度很高。

 

        這種應用模式比較適合純網頁應用,但是當後端對接App時,App可能並不需要後端返回一個HTML網頁,而僅僅是資料本身,所以後端原本返回網頁的介面不再適用於前端App應用,為了對接App後端還需再開發一套介面。

 

請求的資料互動如下圖:

 

 

 

 

前後端分離

 

      在前後端分離的應用模式中,後端僅返回前端所需的資料,不再渲染HTML頁面,不再控制前端的效果。至於前端使用者看到什麼效果,從後端請求的資料如何載入到前端中,都由前端自己決定,網頁有網頁的處理方式,App有App的處理方式,但無論哪種前端,所需的資料基本相同,後端僅需開發一套邏輯對外提供資料即可。

 

在前後端分離的應用模式中 ,前端與後端的耦合度相對較低。

 

在前後端分離的應用模式中,我們通常將後端開發的每個檢視都稱為一個介面,或者API,前端通過訪問介面來對資料進行增刪改查。

 

對應的資料互動如下圖 :

 

前後端分離的優點
徹底解放前端
前端不再需要向後臺提供模板或是後臺在前端html中嵌入後臺程式碼
提高工作效率,分工更加明確
前後端分離的工作流程可以使前端只關注前端的事,後臺只關心後臺的活,兩者開發可以同時進行,在後臺還沒有時間提供介面的時候,前端可以先將資料寫死或者呼叫本地的json檔案即可,頁面的增加和路由的修改也不必再去麻煩後臺,開發更加靈活。
區域性效能提升
通過前端路由的配置,我們可以實現頁面的按需載入,無需一開始載入首頁便載入網站的所有的資源,伺服器也不再需要解析前端頁面,在頁面互動及使用者體驗上有所提升。
降低維護成本
通過MVC框架,我們可以非常快速的定位及發現問題的所在,客戶端的問題不再需要後臺人員參與及除錯,程式碼重構及可維護性增強。
應用場景


只有嘗試了才知道適不適合,只有切身體會才能辨別誰是誰非,本文並非推崇一定要前後端分離,而是希望大家在合適的應用場景下去嘗試前後端分離,在豐富經驗的同時或許也會擦出火花。