最近的踩坑分享 | 技术文档和需求拆解

简介: 最近的踩坑分享 | 技术文档和需求拆解

技术文档


阅读理解


下图来自某平台的技术对接文档,请重点看一下红线的含义。


刷新token的场景说明:


微信图片_20221112225544.jpg


请大家理解一下,红线处的场景到底想表达什么?

文档中说的在 access_token 过期 1h 之内 是指token过期前1h之内?还是token过期后1h之内?

我们团队同学开始的理解是:token过期后1h之内。

(从正常人的阅读感受来说确实是这样的)


实际情况


但是我在接手这部分逻辑的时候感觉不对。

因为我当时并没有读这个对接文档,而是站在正常刷新token的角度去考虑:

如果让我来设计服务端无感刷新token,我的设计思路是:在token过期前1小时支持通过refresh_token来刷新token。

尤其是当我看到这段之前的代码逻辑时,感觉非常不科学。

(为了方便理解,用伪代码给大家演示)


if 过期时间 > 当前时间 - 1小时 {
   返回cache中的token
}else{
    刷新token的方法
}


比如:过期时间是4点,当前时间是4点半,正常来讲token过期了的;但是按照上面的逻辑:当前时间 - 1小时。4点半就变成了3点半,满足返回cache中token的条件。

显然这种处理方式是不对的,违反常识。


沟通


经过一番沟通确定之后,果然,文档中说的在 access_token 过期 1h 之内是指token过期前1h之内。

哎,这种文档真是坑人啊。


总结


写文档和写注释一定要想清楚,别坑队友。写的模棱两可还不如不写。

对接三方沟通非常重要,当有疑问的时候马上去沟通,不要迟疑。


需求拆解


背景


最近做的工作都没有明确的需求,都是参考之前的代码逻辑,实现新渠道商的对接,导致踩了不少坑。

碰到这种没有明确需求的工作怎么推进呢?


我的踩坑总结


  1. 需求拆解,尽量把需求拆的足够细,以方便评估时间,挖掘出深层次的需求
  2. 明确责任边界,比如碰到和本次需求没有直接关系,但是影响自己开发的bug,一定要及时沟通,尽量让bug的责任人去处理;而不是自己大包大揽都干了。
  3. 及时反馈进度,当做这种需求时,领导大概率也是没想清楚的,所以不知道真正的工作量,更没有一个明确的完成时间的deadline,这种情况下及时沟通进度非常重要。尤其是当意识到可能在规定时间内无法完成,一定要提前告知。
相关文章
|
移动开发 程序员 编译器
三分钟创建一个新应用,ivx的神奇之处【PPT式程序开发】
IVX是一门人人都能快速掌握的可视化编程语言
102 0
|
6月前
|
存储 小程序 开发工具
零基础开发小程序第四课-查看功能开发
零基础开发小程序第四课-查看功能开发
|
6月前
|
存储 Java API
嵌入式工程师如何写好技术文档
嵌入式工程师如何写好技术文档
225 1
|
移动开发 缓存 JavaScript
「 前端开发规范 」10人小团队前端开发规范参考这篇就够了!
引自《阿里规约》的开头片段: ----现代软件架构的复杂性需要协同开发完成,如何高效地协同呢?无规矩不成方圆,无规范难以协同,比如,制订交通法规表面上是要限制行车权,实际上是保障公众的人身安全,试想如果没有限速,没有红绿灯,谁还敢上路行驶。对软件来说,适当的规范和标准绝不是消灭代码内容的创造性、优雅性,而是限制过度个性化,以一种普遍认可的统一方式一起做事,提升协作效率,降低沟通成本。代码的字里行间流淌的是软件系统的血液,质量的提升是尽可能少踩坑,杜绝踩重复的坑,切实提升系统稳定性,码出质量。
20629 4
「 前端开发规范 」10人小团队前端开发规范参考这篇就够了!
|
存储 小程序 开发工具
零基础开发小程序第四课-查看功能开发(一)
零基础开发小程序第四课-查看功能开发(一)
|
小程序 容器
零基础开发小程序第四课-查看功能开发(二)
零基础开发小程序第四课-查看功能开发(二)
|
数据管理 Java jenkins
API接口自动化测试框架搭建之需求整理、详细设计和框架设计
API接口自动化测试框架搭建之需求整理、详细设计和框架设计
426 1
|
前端开发 JavaScript ice
flexiwan项目踩坑实践
flexiManage是以色列一家初创公司flexiWAN开源的基于SD-WAN平台的应用层的框架,包括flexiManage服务端框架以及硬件侧的flexiAgent框架,然而其并没有开源前端框架,为了验证其SD-WAN方案的可行性,需要快速搭建一个前端应用
264 0
|
设计模式 安全 关系型数据库
2w行代码、200个实战项目,助你修炼5大编程基本功
2w行代码、200个实战项目,助你修炼5大编程基本功
157 0
|
SQL 自然语言处理 搜索推荐
搜索引擎项目开发过程以及重难点整理(二)
搜索引擎项目开发过程以及重难点整理(二)
144 0
搜索引擎项目开发过程以及重难点整理(二)