在移動互聯網,分佈式、微服務盛行的今天,先後端的工做職責愈來愈明確,前端頁面的展現、交互體驗愈來愈靈活、炫麗,響應體驗也要求愈來愈高,後端服務的高併發、高可用、高性能、高擴展等特性的要求也越發苛刻,而帶來的另外一個問題:先後端的對接界面雙方卻關注甚少,沒有任何接口約定規範狀況下各自幹各自的,致使咱們在產品項目開發過程當中,先後端的接口聯調對接工做量佔比在30%-50%左右,甚至會更高。javascript
前端工程師作html頁面,寫好後,後端工程師將html頁面套成jsp頁面,好處很明顯,能夠本地開發,很高效,但若是html發生變動,那你就慘了,並且模板是後端套的,頗有可能套錯,套完後還須要前端肯定,來回溝通調整的成本比較大。css
之前的JavaWeb項目大多數都是java程序員又當爹又當媽,又搞前端,又搞後端。html
大多數項目都是MVC架構,控制層,業務層,持久層。控制層負責接收參數,調用相關業務層,封裝數據,以及路由&渲染到jsp頁面,但前端要是弱勢一點,每每就會被後端要求在模板層寫出很多業務代碼,還有一個很大的灰色地帶是 Controller,頁面路由等功能本應該是前端最關注的,但倒是由後端來實現。Controller 自己與 Model 每每也會糾纏不清,看了讓人咬牙的業務代碼常常會出如今 Controller 層。這些問題不能全歸結於程序員的素養,不然 JSP 就夠了。前端
先後端僅經過異步接口來編程,先後端都各自有本身的開發流程,構建工具,測試集合。java
Mock 服務器根據接口文檔自動生成 Mock 數據,實現了接口文檔即API:nginx
user/login?body={"uname":"root","pwd":"root"}
複製代碼
{
code:200, //返回狀態碼
message:'請求成功', //返回信息描述
data:object //返回值
}
複製代碼