问题的起因
很多东西真的是用起来才会发现问题,问题是前两天交互需要改一个业务,另个部门A同事发我让我去修改,这页面静态确实是我写的,我也抽时间把它写好重新发给A同事。
现状
我们公司目前的开发模式是:交互根据PM出高保真,视觉出视觉稿、切图,然后交给前端出静态,最后交给另一个部门同事把它转换成服务端模板。
这样问题就来了当出现上述交互要改业务的情况,A同事改不了只能发回前端改,如果A把他已经搞成服务端模板的代码返回给前端,前端没环境也没法下手,只能去改以前的静态,改好后重新发给A,这时候A又麻烦了,他要对比两次修改的部分,把自己前一阵的修改合并进去。这样开发效率会慢很多。
基于NodeJS的全栈式开发
这是2014年杭JS,淘宝赫门做的分享(那时候我还在玩泥巴o(╯□╰)o),特意去找了当年的文档,中途岛(Midway Framework)的架构,淘宝的前端团队真的很厉害。

多加了一层中间层。
前后端共享模板,前端来决定某个模板是服务端渲染还是客户端渲染,当首屏的时候,就在服务器渲染,次屏和局部刷新的时候,就在浏览器端渲染展示。
加入NodeJs还有很多好处,比如NodeJs的高并发特性,请求合并等。同时使用nodeJs做桥梁,前端可以自己决定获取什么格式的数据。

这样还分清了职责
我们该怎么做
在公司产品的角度,觉得我们公司并不需要。其实适合自己就好,没必要占领中间层。相对来说我们公司的前端比较弱,产品线又横向发展并没太深入的产品,分离的还是业务逻辑JS该谁写,把这些都应该交给前端前,端负责展现交互逻辑,去掉A那部分,后端专注于数据接口就好,对于接口接口风格是面向业务 还是面相页面有待统一。这样必然导致前端人员工作量的增加,和水平的相应自我提升。对于数据Mock,可以采用RAP之类接口自动化工具。