其实个人观点一直都是程序员没有先后端之分,项目才有先后端之分。咱们能够看到不少优秀的前端都懂后端的,不少优秀的后端也对前端有所了解。前端
恰好我是个前端,常常被作后端朋友吐槽前端不懂业务,而后一直想写点来吐槽下,其实懂不懂业务和前端后端不要紧,而是和你在在项目中所在位置和你在项目里的用心程度有关。就我目前来讲,天天的扯皮,在扯业务的比单纯扯前端技术的多的多,对业务的了解也不比后端了解的少。程序员
说说我遇到的一种状况:数据库
先后端没分离的时候是这样开发的:后端
产品交互下来,开发须要对每一个前端逻辑理清楚,数据库要怎么设计,接口要怎么设计,前端(实际上是重构)只是实现ui设计的效果。前后端分离
先后端分离常常出现的状况是:性能
一个项目启动,产品给了交互,后端会说你把须要的接口列个文档给我,前端把接口列完,后端一个一个写完,流程走通后发现缺胳膊少腿,而后接口添添补补,项目终于完工了。ui
这个过程后端都不考虑的业务的,业务都丢给前端和产品去考虑,后端甚至无论他给的接口用来干吗,反正提供给前端要的数据就能够了。职业规划
有的时候前端只是要一个字段,后端把整个表都返回给前端,都不用考虑性能的。设计
因此这个时候出现的状况就是后端不太了解业务。懂不懂业务和是前端后端没什么关系。接口
在实际项目中参与先后端分离项目已经有好几年了,在我这几年实际参与的项目总结出一个小规律:若是一个项目中,前端中没有懂后端的人,后端中没有懂前端的人,项目出问题的可能性会大不少。
先后端分离以后,广泛出现这样一种状况,前端有个负责人,后端有个负责人。这个致使的结果就是,后端负责人不少不会考虑前端的开发体验,前端会各类吐槽后端这不规范,那不规范,致使扯不完的皮。
在一个项目中必须有个leader,并且是惟一的leader,先后端分离不是一个leader分离出两个leader。
我的以为原本没多大区别的,被你们搞得区别很大。职业规划原本都同样: 码农 -> 技术主管 -> 业务主管/资深工程师 -> CTO/CEO。
但实际状况可能是一个公司作好后面后端的话语权会愈来愈大,毕竟数据库在人家手上,而后致使前端会显得不那么重要。若是你仍是在一家不重视用户体验的公司,那前端只是实现效果的重复劳动者而已。
自我感知下来,我作后端会比作前端更加仔细谨慎;作前端的时候对产品的感受更深,再体验上思考的更多,和产品的沟通会更多,这是作前端比较能找到成就感的地方。
我以为能够试试轮岗
我的公众号:程序员很忙(xiejun_asp)