论前后端分离的好处

左直拳 左直拳     2023-01-14     531

关键词:

前后端分离最大的意义在于前后端可以并行开发。

现在搞BS架构程序,前后端分离应该是主流了。前后端分离有什么好处呢?我认为最大的好处是,使得前后端可以并行开发。其次是前后端分离成2个不同的工种,好比桥接模式,各自独立演化,使得各自的水平会越来越高。

前后端分离对于产品来说,并没有很明显的好处。也就是说,前后端分离,并不比前后端不分离的程序更好。表现都是一样的。反而不分离的程序,页面输出时,就能夹带一些服务器变量,不必页面加载完毕后又请求一轮,可能性能会更好一些。当然啦,如果服务器输出这些变量要做很长时间的运算,那还是异步加载用户体验好。至于现在的VUE、react,默认是单页面应用,各种切换比多页面流畅,那是另一个维度的东西,跟前后端分离不是一回事。

以往虽然有什么asp.net mvc,各种模板引擎,但这些都不是真正的前后端分离,在开发流程上,没有办法截然分开。现在不一样了。

并行开发,意味着开发进度的提升。但有个前提条件,就是要投入更多的人力资源。比如说,一个项目,划分为2个子系统,原本投入2个人开发,每人负责1个子系统,既搞前端又搞后端。现在前后端分离,应该投入4个人,每2个人搞1个子系统,其中1人前端1人后端,理想的情况下,系统开发进度将缩短一半。如果还是2个人搞,1个人负责所有的前端,另一个人负责所有的后端,我觉得改善可能不大。当然,这里面可能会有一些组件复用,也许能够缩短一些时间,但改善不会太多。同一个项目组里,就算人人前后端一起搞,也同样可以做到组件复用。所以说,前后端分离,要靠增加人手才能取得效果。以资源换进度。

前后端分离也有缺点。前后端并行开发,更多的人员参与,意味着沟通成本增加了。原本一个人按照设想开发,很顺畅,现在前后端要频繁沟通。这也对设计师提出更高的要求。就是很多东西要预先想得很清楚,否则后期的更改,成本会很高,甚至引起抵触。有些时候,有些东西很难一下子想得十全十美,只有边做边想,精雕细琢,才能做好。前后端不同人负责以后,基本杜绝了这种可能性。更可能出现的结果是,本来想改一下的,想想麻烦,就算了。难出精品。

按照一般的做法,前后端分离,变成2个工种,那么一个程序员,要么就是前端,要么就是后端。好处如前所属,前端和后端各自演化,各自领域的水平可以发展得很高。但是,前后端相互割裂,互相不了解,真的是好事吗?如果一个人既懂前端,又懂后端,做出来的东西会不会更好呢?前端只是从后端请求数据,好像根本没必要关心后端如何实现,融会贯通似乎没啥用。这个东西,我说不好。

从公司的角度出发,当然希望前后端人员分离,人人是革命的螺丝钉,流水线作业,程序员10元3个。能够很快出成品。

但我坚信全栈工程师更有利于程序开发。但我现在说不好这个道理。


2021.10.15
也许更可能的局面,是3个人搞一个子系统。1个前端,1个后端,1个系统设计师。当然,系统设计师也可能由前端或后端工程师兼任,但前后端截然分开,讲究分工的情况下,这种可能性不大。如果前后端都由全栈工程师负责,那其实1个人就能搞定,对于小公司,无疑更适合。一大窝前端,一大窝后端,人人胸前挂一牌子,十分白领、精英的样子,铁打的营盘流水的兵,召之即来,挥之即去;来之能战,去之飘飘,这种情形,也许只存在于大厂,或理想的状态?

前后端分离的好处有哪些?

前后端分离是什么?前后端分离的好处都有哪些?如果两者不分离,会带来什么麻烦事?针对网友关注度非常高的话题,我们今天来大家一一解答。一、什么是前后端分离?前后端分离实质上是前后端代码分离,一般后端人员主... 查看详情

大前端前后端分离带来的好处

大前端前后端分离带来的好处:1.前后端分离开发,相互之间的影响很小2.使用webpack,模块化打包前端代码3.在开发时,可以做到代码热替换,可以使用babel,可以使用css预处理器等等4.打包时,打包代码的同时还可以做到按需加... 查看详情

web开发中前后端分离的好处与区别

参考技术A程序开发的时候,前后端开发以数据为交互导向的开发方式,同时也是一种架构方式。前后端开发是一种趋势,在过去技术不成熟的时候,前后端不分离还是很常见的,有些fullstack可以实现独立网站的开发,现在的主... 查看详情

为什么要前后端分离?前后端分离的好处和坏处是什么?

...目都是jquery+html写的。领导想让我推一下vue+vue-cli+webpack,前后端项目的想法,我正在做整理资料,我便想到了前后端分离项目的必然性的特点,和传统技术的优势;总结的最完美的一句话我觉得应该是前后端分离的主要概念就是... 查看详情

前后端分离浅析

什么是前后端分离?前后端为什么要分离?前后端怎么样分离的?前后端分离给我们前端技术人员的开发带来什么样的好处?下面我就带着这些问题,来简单谈谈我了解到的前后端分离情况。 在讲前后端分离之前,让我们先... 查看详情

浅谈前后端分离

浅谈前后端分离   所谓的前后端分离,到底是分离什么呢?其实就是页面的渲染工作,之前是后端渲染好页面,交给前端来显示,分离后前端需要自己拼装html代码,然后再显示。前端来管理页面的渲染有很多好处,... 查看详情

你是如何看待前后端分离的?

首先看看前后端分离是什么?  “前端”通常指的是,相对来说更接近用户的一端,例如:APP,网页、桌面程序等,在现实开发中大部分情况可以理解为“客户端”;  “后端”相对来说就更泛化了,可以理解为是为前端提... 查看详情

nginx反向代理前后端分离项目(后端多台)

目前软件架构都比较流行前后端分离,前后端的分离也实现了前后端架构的分离,带来的好处——整个项目的开发权重往前移,实现真正的前后端解耦,动态资源和静态资源分离,提高了性能和扩展性。通常SpringBoot与vue进... 查看详情

前后端分离

一丶为什么要实现前后端分离:前后端分离有什么好处按照项目开发来说:1.实现前后端分离可以使项目更快的研发完成,2.加快了项目的时间传统开发形式: 前后端分离开发:在开发阶段,当有新的需求时,前后端工程师约定好接... 查看详情

什么是前后端分离与前后端不分离

  我起初认为前后端分离是,在软件开发过程中前后端分工就叫做前后端分离,其实是前端所有用到的数据都是后端通过异步接口的方式提供的,前端只管页面的展示及效果。   前端和后端不分离的时候,前端的页面也... 查看详情

浅谈前后端分离。

...传统的web应用开发中,大多数的工作人员会将浏览器作为前后端的分界线。将浏览器中为用户进行页面展示的部分称之为前端,而将运行在服务器,为前端提供业务逻辑和数据准备的所有代码统称为后端。在前后端不分离的时代... 查看详情

什么是前后端,有没有前后端分离,还有如何区分mvc与前后端分离

参考技术A1>>前后端分离的意思是,前后端只通过JSON来交流...同意其他几位,JSON只是一种可选的协议,而不是唯一,也未必是前后端通信的最佳方案。2>>组件化、工程化不需要依赖后端去实现...有哪些好处或弊端?前端... 查看详情

前后端分离

WEB前后端分离三个最大的优点在于:1:最大的好处就是前端JS可以做很大部分的数据处理工作,对服务器的压力减小到最小2:后台错误不会直接反映到前台,错误接秒较为友好3:由于后台是很难去探知前台页面的分布情况,而... 查看详情

前后端分离实践

前后端分离并不是什么新鲜事,到处都是前后端分离的实践。然而一些历史项目在从一体化Web设计转向前后端分离的架构时,仍然不可避免的会遇到各种各样的问题。由于层出不穷的问题,甚至会有团队质疑,一体化好好的,为... 查看详情

前后端分离

一、什么是前后端分离?最开始租内讨论的过程中我们发现。每个人对前后端分离的理解不一样。为了保证能在同一个频道讨论,先就什么是"前后端分离"达成一致大家一致认同的前后端分离的例子就是SPA,所有用到的展现的数据... 查看详情

vue发布中的前后端分离和前后端不分离

前后端分离思路:前端和后台完全分离.前端提供静态的css和js,在运行时将css和js给后端,后端进行数据的请求(ajax)前后端分离就是前端和后台在不同的服务器上。基本是前端一个nginx加css和js后端nginx加index.html当用户访问的时候... 查看详情

前后端分离与不分离

前后端不分离   在前后端不分离的应用模式中,前端页面看到的效果都是由后端控制,由后端渲染页面或重定向,也就是后端需要控制前端的展示,前端与后端的耦合度很高。    这种应用模式比较适合纯网... 查看详情

django前后端不分离&前后端分离&模板引擎(代码片段)

一、前后端不分离与前后端分离的比较前后端不分离特点:后端需控制数据的展示前后端不分家,耦合严重返回的是HTML页面,适应性、拓展性差只能用于浏览器,其它终端不匹配前后端分离的特点:当前主流后端只对数据进行... 查看详情