暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

来一场Java面试,只问“关于前后端分离”

遇见0和1 2020-10-21
354



面试开始


进场前手机请开启静音,注意自己的仪容仪表,拿好你手上那张毫无含金量的废纸,不然分分钟让你这一趟陪跑~


进场时,确保地上没有明显蹂躏过的纸团,关上小黑屋的门...


HR:对面的菜鸟,你谈谈什么是前后端分离?
我:嗯,前后端分离就是不使用JSP,使用Spring boot + Vue.js开发,Spring Boot 做后端业务代码逻辑并提供接口供前端访问,前端使用 Vue.js 开发,发起Ajax请求后端提供的接口,拿到后端返回的JSON数据,进行页面渲染。(说完后,我内心的嘴角疯狂上扬~)

(此时hr内心戏:我 xxxxx###xxx.....此处为敬语~)
HR:,(压了压音调)你回去等通知吧!


挂机

等了几个月之后,看着越来越高的坟头草,眼看就要到清明节了,你终于意识到自己面试没过~

随即,你就跑到一个叫“编程之外”的公众号,虚心请教了一个爱吹牛逼的小老头,听完你非凡的经历之后,小老头语重心长的对你说:“

咳...你这是答非所问啊,大马猴问你什么是前后端分离,你却告诉他前后端分离用Spring boot + Vue.js;就像我问你,你宿舍卫生间是钢筋混凝土的还是茅草棚,你却和我说今晚我用热水洗澡。

Spring boot + Vue.js只是实现前后端分离非常经典的一套技术组合前后端分离是一种架构模式,是软件技术和业务发展到一定程度,在项目管理工作上必须进行的一种升级,它的产生是一种必然。直白说就是公司部门架构的一种调整。它的产生对前后端进行了有效的解耦,为弹性计算架构、分布式架构、微服务架构、多端化服务等打下了坚实的基础。


你回答了这些之后,只能说明你还有那么一点点东西,但还不够,为了这个月不再吃泡面,还需要从为什么会出现前后端分离这个问题来拓展。
初期的软件开发其实是侧重于后端的,因为互联网初期的页面功能相对比较简单,只需要做一些数据展示,提供基本的操作就可以了,所有整个项目的重点,就放在后台的业务逻辑处理上,但是随着业务和技术的发展,前端功能越来越复杂,变得越来越重要,同时前端的技术栈也越来越丰富,体量越来越大,这样的话在开发中遇到的问题就越来越多,解决这些问题的难度也越来越大,这时我们发现,前端开发不能再像以前JSP那样零散的分布在系统的架构当中,前端也应该像后端一样,实现工程化、模块化,系统化
那么如何做到这一点呢?就是成立专门的前端部门,把原本跟后端程序员混合在一起的前端开发,统一集中起来,形成一个纯粹的前端部门,专门去研究开发工程化的前端技术,迭代升级新的技术体系,以解决项目中的问题,适应技术的发展,所有说它的产生是一种必然。一句话总结就是“为了适应技术和业务发展的需求,前端开发需要从之前与后端混合在一起的组织架构当中分离出来,形成独立的前端部门和后端部门。”这就是前后端分离产生的原因。至此,前端就专注页面表现,页面流畅,兼容性,用户体验等。后端专注追求 三高高并发,高可用,高性能),安全存储业务等。
......

END


大促欢乐购


听完小老头的鬼话,从此你的人生如开挂般的通畅,每天早晨上WC都如有神助一般~然后,你默默的在这篇文章底部点了一个在看并将该公众号设为了星标。

上期承诺的干货:编程之外小程序源代码我已开源,在公众号回复关键词 编程之外小程序 获取gitee地址,Start支持是我开源的动力,拒绝白嫖,一定要Start
文章转载自遇见0和1,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论