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