Web研發模式的演變
職責分離(減小扯皮,開發效率),代碼分離(可維護性)html
- 簡單明快的早期時代
- 後端爲主的 MVC 時代
- Ajax 帶來的 SPA 時代
- 前端爲主的 MV* 時代
- Node 帶來的全棧時代
前端負責模版,輸出靜態html,後端準備model,處理業務邏輯;利於SEO;前端
* 後端專一於提供ajax接口,前端處理數據展現 * 前端MV*(自然先後端分離),有首屏渲染問題,不利於SEO * 約定接口規範(RESTful API)、約定返回數據格式、設置接口返回數據
經過這種模式,能夠分離部分先後端工做。後端在項目前期書寫接口並返回一些符合約定格式的數據,這樣前端沒必要等待後端實現了接口後纔開始處理數據的展現。
存在問題:有些數據是在後端設置的<title><?=getTitle()?></title>
,好比首屏,並不經過ajax。
node
前端負責瀏覽器端與nodeJs。加入node層,解決了路由/首屏渲染等問題。而後先後端協做只須要約定數據接口便可。
git
- 優勢:代碼重用(模版、數據格式檢查代碼),bigPipe
- 弊端:須要考慮node安全
淘寶midway項目github