一、介绍
对于新入职场刚开始工作没多久的前后端开发来说,如何联调这个问题,会有一定的问题。
无非也就是效率低一点,进度做的慢一点。
没什么,总会有新手期,等变成了老手就好了。
那么前后端如何高效的进行联调呢,我想有下面几点
- 双方对需求的理解
- 双方对细节上是否同步
- 需求、接口更新后双方是否能及时同步
看出来了吗?虽然说前后端是分离的,但这只是代码上的,本质上他们还是要共同努力完成同一个需求。
所以除了代码是分开两个人写,那其他的就得当做是一个人,意念合一懂吧。
好的,那如何达到意念合一的状态呢,下面就和大家简单说说
二、如何高效
1)从需求出手
前后端联调,都是为了完成某个需求,那么必须先从需求出手
在开始需求会议的时候,前后端必须得一起参加,有问题得在会上提
我现在这家公司,就连这个需求会议都是没有的,并不是说所有需求都没有会议 如果是比较大的需求,产品会叫上前后端开发测试等同事一起会议 不怕这个,怕的是产品以为这个需求很小,没有叫上所有人,仅仅只是交代给了前端或者后端,等他们开始做需求了,才发现困难重重 然后需要反馈,重新拉会议进行沟通,这一来一回都是成本
上面描述的是公司管理上的混乱,新人入公司改变不了,只能尽量改变自己的习惯
也就是,在自己接收到需求时,自己确定了后,一定要找对方问清楚,前端找后端,后端找前端
当然了,有些产品就喜欢到座位上找你改东西,如果前后端座位离得近的话,直接拉上他一起沟通,也算是一个小的需求会议了
2)开发前准备
在确定完需求后,别急着编写代码,还有一步重要的步骤。
那就是前后端该如何进行编码,这很重要,直接影响了后面编码联调的效率
开发前具体需要做什么,就是确定需求中,有哪些接口,接口的出入参,接口调用的逻辑顺序
只有两边同步过,确定了满足需求后,才好进行编码
这边引入文档工具,如果公司有最好不过了。
如果没有,开发也要自己找一款文档工具来提供给前端,第三章推荐一款好用的文档工具。
根据需求的大小,这个时间也从10
分钟到半天不等的时间,双方讨论对齐接口也需要额外花费时间
但请相信,这十分有必要。
而且,在沟通过程中出现了,设计不合理或者实现困难的时候,直接找到产品沟通,总比后面编码联调时出现问题要好。
3)需求变更
在开发的过程中,往往会出现不符合预期,变更需求的情况
主要有两点带来
- 开发到一半,发现前期评估不到位,导致开发有难度,或者逻辑前后不通顺,需要变更需求
- 产品方在开发到一半的时候介入,需求需要变更,这个就没有什么好说的了
主要说说第一点,在第二节开发前准备,前期评估的时候就已经大幅度降低这种可能了,但不是绝对,总会有漏网之鱼的
一旦出现,及时找产品说明清楚,需要重新评估需求
当然,需求再次确定下来后,同样走一遍开发前准备,将之前的设计修修补补,该加的接口加上,该去除的逻辑就去掉
重新调整接口、出入参、接口调用的逻辑顺序,这件事要做到与前后端同步
4)同时开发
在定好接口的出入参了之后,前后端都可以着手进行开发实现了。
有前端会疑问,前端不是必须要调用到后端接口才能进行开发吗,后端接口还没好怎么进行联调
其实,除了页面上的UI
开发,最重要的是整体逻辑上的通顺闭环,我们可以通过mock
后端接口来完成这这时间的开发
等到后端接口完成后,直接进行替换baseUrl
,来进行逻辑上的查漏补缺
像我上面说的,只要前期沟通准备到位,后期真正联调的时间就越短,效率也就越高
三、文档工具
市面上,有很多文档工具,像showDoc
、YApi
、easyDoc
等等,都可以定义接口文档
我特别喜欢一款文档工具Apifox
,直接抓取项目中配置的Swagger
的接口信息,生成文档
前端可以再上面进行mock
接口,后端可以在上面调用自己验证接口
具体使用可以查看下面官网
Apifox - API 文档、调试、Mock、测试一体化协作平台。拥有接口文档管理、接口调试、Mock、自动化测试等功能,接口开发、测试、联调效率,提升 10 倍。最好用的接口文档管理工具,接口自动化测试工具。
四、最后
对于新人,上面的步骤至关重要,尽量对着上面的步骤来,能节约不少的时间,避免返工的出现。
但如果是一位老手,公司元老级别人物,本身就对系统了如指掌,那配合他来进行,效率说不定还更高。
其实,还有一些隐藏的规范,和公司的规定有关 比如说,接口统一用
POST
请求,加上body
请求体的方式 简单粗暴,这都是公司为了照顾新手所制定的一些规则