首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >前后端分离开发模式

前后端分离开发模式

作者头像
PM吃瓜
发布2023-03-02 20:26:41
发布2023-03-02 20:26:41
9750
举报
文章被收录于专栏:PM吃瓜(公众号)PM吃瓜(公众号)

为什么要进行前后端分离 前后端可以身心愉快地专注于各自擅长的领域 避免后端写前端代码(基本上1天时间,20%写后端代码,80%写页面…) 前端配置后端代码运行环境(简直是要疯… 装一堆环境,而且有些开发环境是windows,前端是macos,装环境就要装好几天) 避免前后端打架,推诿,甩锅… 提高开发效率 分离有助于前端大放异彩,后端专注于三高(高并发、高性能、高可用) 太多了…

前后端分离前我们的开发协作模式一般是这样的

前端写好静态的HTML页面交付给后端开发。静态页面可以本地开发,也无需考虑业务逻辑只需要实现View即可。

代码语言:javascript
复制
后端使用模板引擎去套模板,同时内嵌一些后端提供的模板变量和一些逻辑操作。
然后前后端集成对接,遇到问题,前台返工,后台返工。

然后在集成,直至集成成功。

代码语言:javascript
复制
在前端调试的时候要安装完整的一套后端开发工具,要把后端程序完全启动起来。遇到问题需要后端
开发来帮忙调试。我们发现前后端严重耦合,还要要求后端人员会一些HTML,JS等前端语言。
前端页面里还嵌入了很多后端的代码。一旦后端换了一种语言开发,简直就要重做。

像这种增加了大量的沟通成本,调试成本等,而且前后端的开发进度相互影响,从而大大降低了开发效率。

前后端分离模式

  • 前后端分离并不只是开发模式,而是web应用的一种架构模式。在开发阶段,前后端工程师约定好数据交互接口,实现并行开发和测试;在运行阶段前后端分离模式需要对web应用进行分离部署,前后端之前使用HTTP或者其他协议进行交互请求。
  • 客户端和服务端采用RESTFul API的交互方式进行交互

代码语言:javascript
复制
在传统架构模式中,前后端代码存放于同一个代码库中,甚至是同一工程目录下。页面中还夹杂着后端
代码。前后端工程师进行开发时,都必须把整个项目导入到开发工具中。

前后端代码库分离,前端代码中有可以进行Mock测试(通过构造虚拟测试对 象以简化测试环境的方法)的
伪后端,能支持前端的独立开发和测试。而后端代码中除了功能实现外,还有着详细的测试用例,以
保证API的可用性,降低集成风险。

并行开发

代码语言:javascript
复制
在开发期间前后端共同商定好数据接口的交互形式和数据格式。然后实现前后端的并行开发,其中
前端工程师在开发完成之后可以独自进行mock测试,而后端也可以使用Postman等接口测试软件进行接口
自测,然后前后端一起进行功能联调并校验格式,最终进行自动化测试。

职责分离

  • 前后端仅仅通过异步接口(AJAX/JSONP)来编程
  • 前后端都各自有自己的开发流程,构建工具,测试集合
  • 关注点分离,前后端变得相对独立并解耦合

分离后的开发模式

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-06-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 PM吃瓜 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 并行开发
    • 职责分离
  • 分离后的开发模式
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档