总结:前后端分离就是后端开发写接口将前端想要的数据通过JSON数据的形式传给前端,前端开发只需要在使用的时候调用相应的AJAX获取后端传来JSON数据,实现了前后端的数据通讯,产生了前后端分离的开发模式。
在前后端分离未出现之前,一个公司的后端开发基本就相当于全栈开发,而前端开发则相对来说显得没那么重要。因为前端只需要提供一个静态的、初始的HTML文档给后端就可以了,基本不需要处理太多业务逻辑的问题。而后端此时显得尤为重要,工作也相当繁重。不但需要操作数据库,负责数据库的CRUD,还要将后端代码嵌入到HTML页面里,这样才能将后端查询数据库拿到的数据渲染到页面上。
由此可见,前后端分离出现之前,前后端耦合相当严重。前端任务太轻,后端需要处理他不擅长的前端领域。这会带来前后端分工不明确、前端页面由后端处理而带来的美观、优化等问题。对于大公司、大业务来说也更需要前后端的分工明确,前后端专注自己的领域,会让开发更高效、方便维护。
为了前后端解耦,于是就有了前后端分离。此时前后端任务基本对等。后端从前端开发解放出来,后端专注对数据的处理,只需要写一个接口通过JSON数据传给前端,不需要关心前端的数据渲染、显示问题。前端告别“咸鱼”的生活,开发参与感变高。前端依然专注用户的游览体验以及UI的设计,此外增加了调用后端接口,返回后端数据,将后端数据渲染到页面上的任务。
前后端分离通过后端开发写接口,前端开发通过AJAX调用后端写的接口来获取后端传来JSON数据,实现了前后端的数据通讯,产生了前后端分离的开发模式。