云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

数据库_网站建设三网合一_免费1年

小七 141 0

变化不小

"我们希望将产品评论的长度限制在140个字符以内,因为我们可能希望在某个阶段使用短信。这是个小小的变化,对吧?"错了。当你致力于交付高质量的软件时,没有什么小的变化。让我们看看上面的例子。一个天真的程序员很可能在三分钟内就把它编码好,毕竟它只是一个if语句。咨询业的背景是,你的时间是有报酬的,它教会你在进行"小改变"之前先问几个问题。让我们从一些简单的问题开始。当评论超过140个字符时会发生什么?我们是裁剪字符串,还是向用户显示错误消息?如果我们显示一个错误,它会出现在哪里?上面写着什么?谁来编写错误消息?我们如何向用户解释为什么我们将它们限制在140个字符以内?这些错误看起来如何?我们有一个风格定义吗?如果没有,是谁设计的?但是等等,还有更多…如果我们手头上有解决上述所有问题的答案,我们仍然没有完成。仅仅在服务器端执行此操作是一种处理错误的混乱方法。我们应该在客户端做这个。但是如果我们要做客户端验证,那么我还有几个问题…谁在写JavaScript?JavaScript显示的错误类型是否与服务器端代码相同?如果不是新风格,那又是什么?如果没有JavaScript,它的行为如何?我们如何确保140个字符要求的任何新更新都会影响客户端和服务器端验证?我们还没说完。从用户的角度来看。由于一个奇怪的原因,他们不得不将评论限制在140个字符以内,他们已经感到沮丧了,现在我们让他们猜猜他们的信息有多长?一定有更好的办法。让我们给他们一个字符计数器。哦,好吧,这又引出了几个问题…快到了…谁来写这个字符计数器?如果我们使用的是我们在网上找到的,那么谁会想在我们的目标浏览器(即不仅仅是Chrome 27和更高版本)中测试它呢。另外,屏幕上显示的字母数在哪里?伯爵长什么样?当然,当用户接近零个字符时,样式应该改变,当用户使用了超过140个字符时,样式应该看起来是错误的,或者应该停止接受输入?如果是这样的话,当他们粘贴一些东西时会发生什么?我们应该让他们编辑,还是提醒他们?当我们实现了字符计数器,设置了所有错误的样式,实现了服务器端验证,并在所有受支持的浏览器中检查了它,那么就只需要为它编写测试,然后再部署它。假设您的生产时间是坚实的,这一点将是直接的。所有这些都很高兴地忽略了这样一个事实:为什么有人在他们面前写了一篇80字的评论,而现在只允许他们写140个字符的评论。显然,我们需要保持对此的支持,并更新我们的文档、API、iPhone和Android应用程序。另外,我们如何处理之前的所有评论?我们是该把它们剪掉,还是让它们保持原样?别让我开始讨论我们将如何处理现在人们使用的所有时髦人物……祝你在短信中发送他们好运。我们可能需要清理输入的流氓字符字符串,这意味着新的错误消息,新的服务器端代码……列表还在继续。一旦你完成了所有这些,你将有你的功能,这只是一个字符计数。现在尝试一个比if语句更复杂的方法。当你做得很好的时候,没有任何微小的功能。这就是为什么作为一个用户体验设计师,在你点头并写下另一个要点之前,你需要很好地理解实现一个特性需要什么。你不可能是认真的…是的,这是一个咆哮。是的,上面的大多数决策都可以由有经验的开发人员即时做出,但不是全部。是的,您可以使用maxlength,但这只解决了上面提到的一点,即使是在HTML5上下文中。通常,看似两分钟的工作,往往会变成两小时的工作,而不考虑大局。在两分钟内被认为是"很有价值"的特性,在两小时内完全超出了范围。关键点:范围在几分钟内增长,而不是几个月。分秒必争,几个月自己照顾自己。同意特征似乎很容易。很少对它们进行编码。维护它们可能是一场噩梦。当你在追求质量的时候,没有什么小的变化。