首页 > 其他分享 >前后端分离开发

前后端分离开发

时间:2022-09-01 14:23:10浏览次数:56  
标签:前后 代码 分离 接口 开发 前端

前言

当前项目中,前端代码和后端代码混合在一起,是存在问题的,存在什么问题呢?

主要存在以下几点问题:

1). 开发人员同时负责前端和后端代码开发,分工不明确

2). 开发效率低

3). 前后端代码混合在一个工程中,不便于管理

4). 对开发人员要求高(既会前端,又会后端),人员招聘困难

为了解决上述提到的问题,现在比较主流的开发方式,就是前后端分离开发,前端人员开发前端的代码,后端开发人员开发服务端的业务功能,分工明确,各司其职。我们本章节,就是需要将之前的项目进行优化改造,变成前后端分离开发的项目。

前后端分离

1.1 介绍

前后端分离开发,就是在项目开发过程中,对于前端代码的开发由专门的前端开发人员负责,后端代码则由后端开发人员负责,这样可以做到分工明确、各司其职,提高开发效率,前后端代码并行开发,可以加快项目开发进度。

目前,前后端分离开发方式已经被越来越多的公司所采用,成为当前项目开发的主流开发方式。

前后端分离开发后,从工程结构上也会发生变化,即前后端代码不再混合在同一个maven工程中,而是分为 **前端工程** 和 **后端工程** 。

前后端分离之后,不仅工程结构变化,后期项目上线部署时,与之前也不同:

1). 之前: 前后端代码都混合在一起,我们只需要将前端和后端的代码统一打成jar包,直接运行就可以了。

2). 现在: 拆分为前后端分离的项目后,最终部署时,后端工程会打成一个jar包,运行在Tomcat中(springboot内嵌的tomcat)。前端工程的静态资源,会直接部署在Nginx中进行访问。

1.2 开发流程

前后端分离开发后,面临一个问题,就是前端开发人员和后端开发人员如何进行配合来共同开发一个项目?可以按照如下流程进行:

1). 定制接口: 这里所说的接口不是我们之前在service, mapper层定义的interface; 这里的接口(API接口)就是一个http的请求地址,主要就是去定义:请求路径、请求方式、请求参数、响应数据等内容。(具体接口文档描述的信息, 如上图)

2). 前后端并行开发: 依据定义好的接口信息,前端人员开发前端的代码,服务端人员开发服务端的接口; 在开发中前后端都需要进行测试,后端需要通过对应的工具来进行接口的测试,前端需要根据接口定义的参数进行Mock数据模拟测试。

3). 联调: 当前后端都开发完毕并且自测通过之后,就可以进行前后端的联调测试了,在这一阶段主要就是校验接口的参数格式。

4). 提测: 前后端联调测试通过之后,就可以将项目部署到测试服务器,进行自动化测试了。

 

标签:前后,代码,分离,接口,开发,前端
From: https://www.cnblogs.com/Zz198/p/16646365.html

相关文章

  • 后端Web开发框架(Java)
    ⬇️点击“下方链接”,提升测试核心竞争力!>>更多技术文章分享和免费资料领取为什么使用SpringBoot简化配置,无需编写太多的xml配置文件,效率很高;Spring可以整合很多各......
  • 微信开发者工具拉取gitlab远程代码报Pull failed原因分析:
    可能出现的原因:本地主机上没有安装nodenode下载地址:1https://nodejs.org/zh-cn/download/ 没有保存gitlab的用户名和密码  ......
  • Python Web 开发(试水篇)
    Web开发历史架构:CS架构,Client/Server【软件开始主要运行在桌面上,而数据库这样的软件运行在服务器端】BS架构,Browser/Serve【客户端只需要浏览器,应用程序的逻辑和数......
  • 宿舍全屋智能开发指南
    宿舍全屋智能开发指南项目说明基于OpenAtomOpenHarmony(以下简称“OpenHarmony”)、数字管家开发宿舍全屋智能,实现碰一碰开门、碰一碰开灯、碰一碰开风扇以及烟感检测。......
  • 日常开发记录-elementUI 文件上传假删除,防止删除文件后后悔的操作,无需调用后端删除文
    此篇博客关键是记录这种假删除的思想,后端给的删除接口也不一定非要用。。。上传文件假删除:<template><div><el-uploadclass="upload-demo"ac......
  • Python入门系列(七)开发常说的“累”与“对象”
    类与对象Python是一种面向对象的编程语言。要创建类,请使用关键字classclassMyClass:x=5创建一个名为p1的对象,并打印x的值p1=MyClass()print(p1.x)所有类......
  • 加快软件开发的四种技术
    加快软件开发的四种技术必须加快软件开发过程,以便为产品提供更多的上市时间。想要引领市场的公司必须比竞争对手更快地推出新产品。在软件开发方面,客户和开发团队可能会......
  • idea插件开发笔记——右键菜单添加自定义模板
    再resources文件下创建fileTemplates/internal文件夹(必须是这个)添加模板文件 mapper.tsx.ft<?xmlversion="1.0"encoding="UTF-8"?><!DOCTYPEmapperPUBLIC"-//......
  • 企业系统集成作为软件开发方法的概述
    企业系统集成作为软件开发方法的概述企业系统集成(ESI)是让多个系统相互通信的过程,方法是建立一个所有参与系统都可以解释的通用数据交换结构,这主要以XML的形式出现。......
  • 你不再是初学者开发者了!
    你不再是初学者开发者了!OgImage1.不怕学新东西!你就像“给我一些时间,这狗屎可以做!”。您将绕过对学习新事物的恐惧。归根结底,您只需使用适合您需求的东西,学习新知识是......