• 前后端分离


    开发模式

    在Web开发模式中,有两种开发模式

    • 前后端不分离

    • 前后端分离

    前后端分离优势

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

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

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

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

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

    为什么要有前后端分离

    • 多端适应
    • 前后端开发职责不清
      • 模板到低是前端写还是后端写?如果前端写,前端就要懂后端模板语言
      • 如果后端写,那么后端就要懂前段html,css,js甚至更多更多
    • 开发效率问题,前后端相互等待
      • 前端在写的时候,就希望后端全部写好自己再写
      • 后端在写的时候,就希望前端全部写好自己再写
    • 前端一直配合着后端,能力受限(搞来搞去写静态页面,天天给后台写模板)
    • 后台开发语言和模板高度耦合,导致开发语言依赖(一旦用python开发,以后要换成java或者其他语言)

    前后端分离缺点

    • 前后端学习门槛增加(比如后台很多模板语法控制前端展示,但是分离以后,需要前端自己去实现,增加前端成本,对后台来说,后端要满足规范)

    • 数据依赖导致文档重要性增加

      • 文档是否详细
      • 是否及时更新
      • 修改要及时通知其他端
    • 前端工作量加大

    • SEO的难度增加(都是AJAX,像一些初级爬虫全部挡在外面,比如一些搜索引擎,这样你的排名就不靠前了)

  • 相关阅读:
    开发管理工具(日常)
    python之uWSGI和WSGI
    php之Opcache
    nginx之健康检查
    重构糟糕的代码(一)
    PHP之50个开源项目
    Redis之各版本特性
    Redis之淘汰策略
    Redis之过期策略
    高并发之nginx限制
  • 原文地址:https://www.cnblogs.com/kai-/p/12333528.html
Copyright © 2020-2023  润新知