刚入职新公司,新公司的前端技术栈除了支付宝小程序,其余项目都是jquery+html 写的。领导想让我推一下vue+vue-cli+webpack,先后端项目的想法,我正在作整理资料,我便想到了先后端分离项目的必然性的特色,和传统技术的优点;html
总结的最完美的一句话我以为应该是先后端分离的主要概念就是:后台只需提供API接口,前端调用AJAX实现数据呈现!!!完美啊。后台只注重算法,向前端提升接口,前端根据接口显示数据,只须要处理前端的业务逻辑,界面优化等等前端
我刚上手的第一个先后端项目的时候,后台会提出我之前这种方法很好用,不必改为那样的吧,这种方式也没什么很差啊?我感受这是不少人共同会提出的一个问题,可是随着时代的进步,这些技术愈来愈多被替代,被淘汰。vue
先后端分离会增长前端的工做压力,减轻后台的工做量,后台不用管前台的业务实现,不用管前台的页面实现。之前,不少项目先后台都不分的,后台习惯了,前台代码他们也会改,出bug了,他们也能够一眼看到bug在哪里,本身顺手就jquery
改了。webpack
不少公司,前端人员不多,都是后端作的,试问后端对前端精么?仔细看一下,代码,大量的前端代码掺杂着前台代码,可读性不好,来个新人就很难维护,可是先后端分离以后,前端看的懂,也不须要学习怎么看后端代码,节约成本web
前端有前端的标准,后台有后台的规范。他们只要共同约定接口的定义,几乎是拿到需求分析后,拿到设计图,是能够一同工做的,不再是之前等前端出完图,放到eclipse ,后端拿来开发,逻辑一变,后台要改,前端也要改。ajax
所谓的工程化也是让别人可以更快更好的维护个人代码;算法
先后端分离并不是仅仅只是一种开发模式,而是一种架构模式(先后端分离架构)。vue-cli
千万不要觉得只有在撸代码的时候把前端和后端分开就是先后端分离了,须要区分先后端项目。小程序
前端项目与后端项目是两个项目,放在两个不一样的服务器,须要独立部署,两个不一样的工程,两个不一样的代码库,不一样的开发人员。
先后端工程师须要约定交互接口,实现并行开发,开发结束后须要进行独立部署,
前端经过ajax来调用http请求调用后端的restful api。前端只须要关注页面的样式与动态数据的解析&渲染,然后端专一于具体业务逻辑