做为开发人员,你为什么应当关心设计

本文是翻译,版权归原作者所有


我们开发人员经常错误地过早进入编码阶段,因为这对我们太自然了。我们通常意识不到,编码是昂贵的。我自己在以前就经常犯这个错误。当我们从头为一个app编码时,主要的设计决定仍然需要去做,我们在开发阶段很快就发现app的很多部分经常需要被重写。原因在于,当编码时,我们发现现实与我们脑子里规划的不一样,有很多我们根本没有考虑到的。如果我们换种方式处理这个过程,所有这些都是显而易见的。

固然,代码总是在改变和重构,不应该阻碍开发人员,不过,我们倾向于忘记变化所带来的时间成本。我们想尽可能地最小化成本。如果你为app做了线框图或模型,修改它们要比修改已经写好的代码更加简单快速。

做为开发人员,你或许认为设计app不是你的工作。毕竟,设计师的工作不是提供线框图和模型的吗?哦,差不多吧。在某些项目,这项工作的确会被安排给设计师,但是也有很多理由证明,做为开发人员的你,为什么想具备这项技能。

如果你是一名自力更生的app开发者,你可能没有钱雇佣专业设计师。尽管如此,这不代表你应该跳过设计阶段,这是很多人犯的错误。虽然你可能不具备设计师老手的技能和经验,创建模型的简单几步将提前突出很多在你开始编码时就会遇到的问题。既然这是一项你自己迟早不得不要做的工作,最好尽可能快地优化和搞定。记住:设计意味着在当前条件下就你的app做出决定。这无论如何就是你的责任。

如果你是,或将来是一名自由开发者,很多设计工作也会成为你工作的一部分。很多客户没有支付一名独立设计师的预算。他们想让你提供问题的解决方案,并把你当做专家。某些客户是不理解设计和开发的区别的。

对你来说,从费用中拿出一部分雇佣设计师协助你当然可行,只是这意味着给你的预算会有更多的限制。对于我过去的某些任务,这不是必需的,因为我能够自己搞定。

注意我没有说过你从来不需要设计师。如果项目庞大,预算允许,当然,去雇佣一名经验丰富的设计师。但是当雇佣另一个人不是可选项时,时时准备好自己做这项工作才是正道。即使可以,这也有助于你监督、影响设计过程,以及做为开发人员的前途提升,这是设计师经常没有的机会。

如果你受雇于某些公司,可能以及有设计师了(如果你在小创业公司工作,前面的那段话也对你适用)。就算是固定工作,能够理解设计师并与之沟通也对你的职业生涯有帮助。这会在公司内部产生一个更好的过程,一个优化的产品,让你更加专业。

如你所见,不管你的岗位是开发人员,还是其它,编码前,理解和运用某些设计过程,要比直接开发,有着较大优势。很多开发人员跳过了这一重要阶段,实际上很多次了。我过去也这样,好多次了。

不要认为设计过程纯粹是app某种视觉上的展示。为你收集需求,这也是设计阶段的活儿。记住乔布斯说的话:“设计并非只是它看上去怎么样和感觉怎么样。设计是关于它是怎么运行的。”因此,提前理解你的app想完成什么、如何完成才是重要的。当你已经敲代码了再去理解,会花去更多的时间。

既然这是重要的话题,我写了一个一步一步的教程,书里覆盖了app的设计过程。即使你不买这本书,我也希望我设法让你坚信提前做这项工作的重要性。下一次你去开发新的app时,或只是已有app的一个新功能,忍住不要写代码,而是开始建立一个模型。有很多现成工具可以助你一臂之力,不过你不需要有想象力的东东。即使用纸和笔勾勒出你的想法,也会改善很多开发流程。

如果你想结合具体案例研究这个过程,可以参考我的书《Step by Step iOS Development》。

原文地址:http://matteomanferdini.com/why-as-a-developer-you-should-care-about-design/

译文:做为开发人员,你为什么应当关心设计 》| 腊八粥