前后端不分离

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

这种应用模式比较适合纯网页应用,但是当后端对接App时,App可能并不需要后端返回一个HTML网页,而仅仅是数据本身,所以后端原本返回网页的接口不再适用于前端App应用,为了对接App后端还需再开发一套接口。

请求的数据交互如下图:

前后端分离

在前后端分离的应用模式中,后端仅返回前端所需的数据,不再渲染HTML页面,不再控制前端的效果。至于前端用户看到什么效果,从后端请求的数据如何加载到前端中,都由前端自己决定,网页有网页的处理方式,App有App的处理方式,但无论哪种前端,所需的数据基本相同,后端仅需开发一套逻辑对外提供数据即可。

在前后端分离的应用模式中 ,前端与后端的耦合度相对较低。

在前后端分离的应用模式中,我们通常将后端开发的每个视图都称为一个接口,或者API,前端通过访问接口来对数据进行增删改查。

对应的数据交互如下图 :

前后端分离的优点
彻底解放前端
前端不再需要向后台提供模板或是后台在前端html中嵌入后台代码
提高工作效率,分工更加明确
前后端分离的工作流程可以使前端只关注前端的事,后台只关心后台的活,两者开发可以同时进行,在后台还没有时间提供接口的时候,前端可以先将数据写死或者调用本地的json文件即可,页面的增加和路由的修改也不必再去麻烦后台,开发更加灵活。
局部性能提升
通过前端路由的配置,我们可以实现页面的按需加载,无需一开始加载首页便加载网站的所有的资源,服务器也不再需要解析前端页面,在页面交互及用户体验上有所提升。
降低维护成本
通过MVC框架,我们可以非常快速的定位及发现问题的所在,客户端的问题不再需要后台人员参与及调试,代码重构及可维护性增强。
应用场景
只有尝试了才知道适不适合,只有切身体会才能辨别谁是谁非,本文并非推崇一定要前后端分离,而是希望大家在合适的应用场景下去尝试前后端分离,在丰富经验的同时或许也会擦出火花。

转载于:https://www.cnblogs.com/1512344358qq/p/10264079.html

前后端分离 与 不分离相关推荐

  1. .net core webapi 前后端开发分离后的配置和部署

    背景:现在越来越多的企业都采用了在开发上前后端分离,前后端开发上的分离有很多种,那么今天,我来分享一下项目中得的前后端分离. B/S  Saas 项目:(这个项目可以理解成个人中心,当然不止这么点功能 ...

  2. 《.NET Core 和前后端那些事儿》技术交流活动纪实

    长沙.NET技术社区.NET Core和前后端那些事儿技术交流纪实 2019年3月10日,下午,在位于沁园春御院的长沙市互联网活动基地,在长沙市.NET技术社区的组织下,长沙市.NET技术圈第一次纯粹 ...

  3. 前后端分离必备工具:Swagger快速搞定(整合SpringBoot详细教程)

    本文根据狂神教学视屏同步所做笔记 目录 一.Swagger简介 1. 前后端分离 2. Swagger引入 二.SpringBoot集成Swagger 1. 新建springboot项目 2. 导入S ...

  4. 前后端分离nginx配置,同时解决跨域问题

    背景 现在,web开发的前后端分离技术越来越火爆,由于最近的公司官网使用了前后端分离的方案,这里就来记录一下前后端分离的项目部署.这里我们使用的前端框架是Vue.js,后台使用Laravel7提供数据 ...

  5. node、Mongo项目如何前后端分离提供接口给前端

    node接口编写,vue-cli代理接口方法  通常前端使用的MocK 数据的方法,去模拟假的数据,但是如果有node Mongodb 去写数据的话就不需要在去mock 数据了,具体的方法如下. 首先 ...

  6. php增删改查前后端分离,前后端分离之前端增删改查

    初次接触前后端分离,现把前端一个例子放出来记录以下,不喜勿喷. html静态页面代码: 菜单管理平台数据... 菜单管理查询条件列表 菜单名称: 菜单父级: 菜单名称: 菜单级别: 菜单父级: 图片地 ...

  7. 前后端分离的接口规范是什么?

    前言 随着互联网的高速发展,前端页面的展示.交互体验越来越灵活.炫丽,响应体验也要求越来越高,后端服务的高并发.高可用.高性能.高扩展等特性的要求也愈加苛刻,从而导致前后端研发各自专注于自己擅长的领域 ...

  8. 若依前后端分离如何写移动端接口_前后端分离实践的架构设计

    前后端分离的项目开发策略已经不是什么新鲜东西了,网上介绍这方面的文章非常多.我自己是在14年的时候接触到的,对这种开发策略一直爱不释手,不管新老项目都会首先用前后端分离的思维先去思考一番.从14年到现 ...

  9. Java项目:网上电商项目(前后端分离+java+vue+Springboot+ssm+mysql+maven+redis)

    源码获取:博客首页 "资源" 里下载! 一.项目简述 本系统功能包括: 一款基于Springboot+Vue的电商项目,前后端分离项目,前台后台都有,前台商品展示购买,购物车分类, ...

  10. Java项目:仿小米商城系统(前后端分离+java+vue+Springboot+ssm+mysql+maven+redis)

    源码获取:博客首页 "资源" 里下载! 一.项目简述 本系统功能包括: 基于vue + Springboot前后端分离项目精简版仿小米商城 系统,注册登录,首页展示,商品展示,商品 ...

最新文章

  1. Android switchCompat. 和 Switch
  2. 【C++】C++11 STL算法(十):使用STL实现排序算法
  3. php 1到9加,php通过排列组合实现1到9数字相加都等于20的方法
  4. php怎么读取图片并输出,php读取图片内容并输出到浏览器的实现代码_PHP教程
  5. java 8 lamda,Java8中你可能不知道的一些地方之Lambda表达式实战
  6. OpenCV-Sobel边缘检测
  7. json转数组(json数组对象)
  8. pdf怎么解除限制?如何解密?一步解决
  9. 最长公共子串 动态规划
  10. arm 嵌入式系统复习大纲
  11. MySQL5.7 InnoDB官方文档中文版[猿教程]
  12. linux不显示无线网卡驱动安装失败,无线网卡在Linux下安装
  13. Delphi控件大全
  14. MongoDB极简实践入门
  15. Android TV Input Framework(TIF)--构建TV input list
  16. 超算计算机需要显卡吗,NVIDIA:中国超算性能世界第一认了 但省电我最强
  17. 阿里云DataWorks介绍
  18. C语言中的void*是什么?
  19. GEE:提取多个点的时间序列数据,保存为csv格式(以NDVI为例)
  20. [C/C++]二分查找专题/最后一个小于等于目标值target的数/第一个大于等于目标值target的数

热门文章

  1. 压力测试过程中MySQL服务CPU占用率过高的问题排查思路
  2. Linux文件管理和用户管理
  3. 首页大广告 redis缓存
  4. cocos2d-x 2.x版本接入bugly的总结
  5. 乔春洋:品牌文化的意义
  6. 远程桌面,此计算机无法连接到远程计算机
  7. 推荐背单词最有效的方法:使用艾宾浩斯记忆曲线背单词
  8. Linux centos7安装RabbitMQ3.8.9
  9. 蓝桥杯 ALGO-10 算法训练 集合运算
  10. python的datetime模块用法_Python3.5内置模块之time与datetime模块用法实例分析