一个输入框你要做一周?

本文讲述了在开发中,一个看似简单的文本输入框其实包含诸多细节,如状态管理、校验、网络数据获取、用户体验等,这些都可能导致工作量远超预期。作者通过实例说明了为什么PO会对一个输入框的开发时间感到震惊,并探讨了如何更准确地评估和应对这类工作量的不确定性。
摘要由CSDN通过智能技术生成

如果PO说这是个很小的改动,你不要信他

一次有争议的估点

在某次迭代会议上,PO希望交付这样一个“简单”功能:在应用中,用户可以输入自己的地址,这样我们可以定期邮寄一些宣传册给用户。

按照PO的描述,这只是一个很简单的文本输入框,用户填写地址之后,地址信息随着其他个人信息一起存到数据库即可。PO甚至在白板上画了一个不太规则的长方形作为示意,然后满怀期望的将目光投向了你 — 一个做事情还算靠谱的开发 - 友善的问道:“你觉得实现这样一个输入框,需要多长时间?如果你觉得太小的话,我们是不是可以在做其他卡的时候顺手做了?”。

你定了定神,在脑海里大致验算了一遍,说:“嗯,我觉得在理想情况下,大概需要五、六天。如果算上开会……”。

“什么?这样一个输入框你要用一周?!”,PO敲着白板上那个不规则的长方形问道。

“呃……,我说的是理想情况,实际上应该会比这个时间更长……”

“……"

如果你有过和非技术出身的PO(或者站得太高而忘记地面是什么样子的架构师)一起工作过,大约很大程度上有过类似的经历。通常来说,预期有这么大的偏差,很可能是大家说的并不是同一件事儿:要么是PO想的过于简单,要么是开发想的过于复杂。

遗漏掉的细节

由于专业知识的屏障,以及对细节的过度简化,使得非专业人士往往会低估完成某项工作所需要的工作量。另一方面,对于专业人士自身,如果忽略了外部环境中客观存在的阻力,同样会对实际工作量产生错误的判断。

“简单”的输入框

在PO眼中,一个普通的文本输入框大约长这个样子:

输入之后,传到后端保存一下就完事儿了。当然,可能还需要一些必要的校验,比如长度不能太短或者太长,地址遵循一定的格式之类。

不那么简单的输入框

不过在一个有经验的开发眼里,一个“普通”的文本输入框是这样的:

显然它拥有更多的状态,也更加复杂:

  • 禁用状态
  • 内容为空的时候
  • 设置焦点之后的状态
  • 非法输入状态
  • 提示信息(helperText)
  • 可用性(Accessibility)
  • 其他状态

通常来说,在初始状态下,输入框会显示一个占位符。当用户开始输入时,需要有各种各样的反馈:拼写错误、太

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值