今日话题“前后端分离”,说起前后端分离,想必大部分程序员还是知道这个概念的,特别是一些老程序员们,对这个概念有着非常透彻的理解,因为他们亲身经历web技术从前后端混在一块到前后端分离的整个过程,比如以前的jsp,php开发都是前后端混在一块的,比如php代码 echo " …";,直接在php里输出网页这种,整个web项目 都是php文件,竟然看不到html文件,现在php,html代码完全分开,并且还可以部署在不同的地方,然后这批老程序员们是亲眼看着技术上这些一步步的演化,现在的前后端分离的确是在开发协作上方便了很多很多,前端开发人员通过后端开发好的接口就可以了。
对于一些后来者程序员来说,刚入行就已经处在前后端分离的这样一个开发大环境中,对于以前情景可能也想不到,但是概念上我想他们还是会懂一点,如果有心去了解的话,近期一名程序员朋友在面试的过程中就被问到是什么是前后端分离这个问题,按理说他略略介绍一下就算是过去了,可万万没想到他却挂在了这道题上,他与面试官的对话大概如下:
“面试官:什么叫前后端不分离?
程序员: 前端代码没部署在后端服务上。
面试官:不对吧
”然后后面的结果也是可想而知了,针对这样一个情况,让我们一起看看其他的网友们都是怎么去看的吧!
美团点评员工:从代码上分离 从部署上分离 从后端只提供数据 渲染由前端控制分离 还有啥想不出来了
上世是朵花:其实楼主现在所做的东西就是前后端分离,可能这个概念上他还不是很清楚。
网易员工:挂的不冤。
楼主回复网易员工:别每次,都一副自己什么都会的样子。这个也简单,那个也简单的,就不喜欢你们这种高高在上的人
上世是朵花:能理解这名网易员工的表达,只不过就是有点直,楼主也不是很愿意接受
网友三:挂了不是应该问下面试官不懂的问题吗?前后端分离这么简单都说不清楚,还一副我不懂我有理得样子,确实挂的不怨
上世是朵花:也许楼主在具体技术层面也是很强的一个人,通过这个事情,让我们知道有时候对于一些技术格局,技术概念的问题也是很有必要去扩展一下。
网友四:作为产品经理的我都知道
上世是朵花:如果是工作年限长的产品经理也是亲眼看着web技术逐渐演化到前后端分离的时代的。
网友五:开发上的分离也可以讲啊。两个团队分别开发,预先设计好借口的规范和模拟数据,前端可以用mock去模拟请求到的数据,后端可以用postman模拟前端去调用接口
上世是朵花:没错,一些日常开发的流程中也能找到类似前后端分离的这些思想。
网友六:前后端分离,主要是指开发阶段,前后端可以根据接口定义各自独立开发,调试,部署。至于是不是前端代码放在后端服务里,怎么部署,不是本质的区别。
上世是朵花:这名网友对前后端的理解就是相对深刻一点了。
网友七:楼主可能理解 就是不会说吧 其实一般都是考前后端分离优势 为什么要分离 只是你回答个表现
上世是朵花:应该是这样,现在他做的就是这个事情,只不过是没能完成的说出一二来。
网友八:前后端分离是一种开发模式,前端负责将数据按照产品设计渲染以及调用后端接口实现产品功能,而后端则提供数据接口,功能接口!前后端分离的开发模式是为了让专业的人做专业的事,且现在前端和后端可以通过接口文档实现并行开发,提高开发效率。至于你说的代码部署服务器是否相同根本就不是这个概念!可以分服务器部署,也可以和后端接口打包在一起部署!
上世是朵花:大家说了这么多,想必楼主已经对前后端分离这个思想的了解程度又提升了一步,不要气馁,这些东西并不是很难,只要去了解一下就会知道的。
从上面的这些事例,我说一下我个人的一些看法,可能楼主呢并非技术很弱的那种,也许在具体编码能力方面也是很强的,技术细节方面的实现还是非常到位,由于工作年限的问题,没有亲眼经历技术上这种演化,一入行就是前后端分离的时代,他也感觉不到前后端分离带来的优越感,另外可能由于平时专注与代码与具体技术点,对一些宏观概念和一些技术大的格局方面的事情了解的不是很多,因此便出现了上面这种情况,通过这个案例,让我们知道作为一名程序员,知识结构的把控也是很重要的,比如平时将90%的精力放在具体技术层面,将10%的精力放在了解技术的宏观层面,在宏观层面了解的透彻了,想必也更有助于具体技术层面的运用不是么?当然,如果技术层面达到一定的高度自然也会突破对宏观层面的了解,建议楼主不要灰心,你也许很优秀,只不过需要对自己一个小小的调整,相信能看到你最后的成功!
以上所有图片均来之互联网
大家好,我是“上世是朵花”。如果你有什么好的看法或者观点可以在评论区展现你的才华,互动交流,如果想进一步了解我,那就关注我吧!(微信公众号:sssdhua )