同事问了一个问题,当拿到一个需求后如何做,以下是我们两个人的交流,说不定哪天面试会用上,记录一下,如果能帮到你很开心。
我:先和用户交流,弄清一点需求后,然后实现一个poc,实现poc后拿给用户看,用户看到poc后肯定会给出意见,可能是他想要的可能不是他想要的,然后进一步和用户沟通,进一步确定需求 ,这个过程重复,直到实现用户的需求达到用户的满意度。poc达到用户的需求后就正式开发,这样的好处是在poc代码开发中不用考虑代码优化和可能存在的bug,主要是实现用户的需求。
jayden :
结合下我们薪薪乐的情况,poc 其实已经达成了,是由 Jocky 达成的(他的原型稿即 poc)。然后就到达我们这边,我们这边会讨论下 poc 中的实现并估时。然后就是直接开发了。从实际上来说,新功能按 poc 实现,或者我们自己决定实现,或者反馈 Jocky 重新讨论后实现。原有功能的修改,除了上述 3 种,我们还得依赖于既有功能来实现(这个实现和 poc 有可能不一致)。
具体开发阶段,新功能比较容易,把界面,交互和接口返回的数据按 poc 的要求组合起来就成了(套路说起来非常简单的一句话,编码起来可能要和接口的兄弟各种讨论了)
如果有旧有功能修改的,这个情况就比较费脑一些,有时新的修改依赖于既有功能较少,那就干脆重新实现了,就像新功能一样 .
有时反过来,又有比较深的依赖,咋办呢
1. 从代码里找出业务上的对应字段(多数是一个接口中某个返回的字段,这个字段的不同值就是对应不同的业务状态)
2. 找到这个字段后,从代码上把需要修改的功能隔离出来,并且确保不会影响既有的其他功能(通常来说需要个 if else 等诸如此类的东西)
3. 在隔离区内实现 poc 里的功能修改(可能是增强交互,可能是增加字段显示,可能是增加数据收集等等)
4. 保证旧有或新增接口的数据传递正常(接受数据或者提交数据)
这就主要的事情差不多就完了
1. 从代码里找出业务上的对应字段(多数是一个接口中某个返回的字段,这个字段的不同值就是对应不同的业务状态)
2. 找到这个字段后,从代码上把需要修改的功能隔离出来,并且确保不会影响既有的其他功能(通常来说需要个 if else 等诸如此类的东西)
3. 在隔离区内实现 poc 里的功能修改(可能是增强交互,可能是增加字段显示,可能是增加数据收集等等)
4. 保证旧有或新增接口的数据传递正常(接受数据或者提交数据)
这就主要的事情差不多就完了