我们中的一些人只是在UI设计的软方面遇到了困难(尤其是我自己)。“后端编码器”注定只设计业务逻辑和数据层吗?我们是否可以做些什么来重新训练我们的大脑,使其更有效地设计出令人愉悦和有用的演示层?
同事们给我推荐了《网站设计》、《不要让我思考》、《为什么软件很糟糕》等几本书,但我想知道其他人在这方面做了什么来弥补他们的不足?
我们中的一些人只是在UI设计的软方面遇到了困难(尤其是我自己)。“后端编码器”注定只设计业务逻辑和数据层吗?我们是否可以做些什么来重新训练我们的大脑,使其更有效地设计出令人愉悦和有用的演示层?
同事们给我推荐了《网站设计》、《不要让我思考》、《为什么软件很糟糕》等几本书,但我想知道其他人在这方面做了什么来弥补他们的不足?
当前回答
我认为我们不能设计ui的原因是因为我们是完美主义者,不能决定什么时候足够好才是足够好。我知道我个人无法忍受UI设计,因为我总是怀疑自己,说:“不,那还不够好。”
其他回答
我认为主要的问题与不同的才能或技能无关。主要的问题是,作为一名开发人员,您对应用程序是做什么的以及它是如何做的了解太多,并且您自动地从具有这些知识的人的角度来设计您的UI。
而用户通常一开始对应用程序一无所知,也不需要了解它的内部工作原理。
不使用你拥有的知识是非常困难的,几乎是不可能的——这就是为什么UI不应该由开发它背后应用程序的人来设计。
登陆Slashdot,阅读任何与苹果有关的文章的评论。你会发现很多人都在谈论苹果的产品没有什么特别之处,把iPod和iPhone的成功归因于人们想要赶时髦。他们通常会浏览功能列表,并指出他们所做的一切都是早期MP3播放器或智能手机所没有的。
还有一些人喜欢iPod和iPhone,因为它们可以简单、轻松地满足用户的需求,而不需要参考使用手册。它的界面非常直观、容易记忆和发现。我对MacOSX的用户界面不像以前的版本那么喜欢,我认为它们已经放弃了一些有用的东西,而倾向于浮夸,但iPod和iPhone是卓越设计的例子。
If you are in the first camp, you don't think the way the average person does, and therefore you are likely to make bad user interfaces because you can't tell them from good ones. This doesn't mean you're hopeless, but rather that you have to explicitly learn good interface design principles, and how to recognize a good UI (much as somebody with Asperger's might need to learn social skills explicitly). Obviously, just having a sense of a good UI doesn't mean you can make one; my appreciation for literature, for example, doesn't seem to extend to the ability (currently) to write publishable stories.
所以,试着培养一种好的UI设计的感觉。这不仅仅延伸到软件领域。唐·诺曼的《日常事物的设计》是一本经典,还有其他的书。获取一些成功的UI设计的例子,并充分利用它们来感受其中的不同之处。认识到你可能不得不学习一种新的思考问题的方式,并享受它。
关于用户反馈,如果你使用的是Mac, Silverback (http://silverbackapp.com/)是一个很好的工具。我建议创建一个要做的事情列表(找到这部电影,观看预告片,找到这个演员的这部电影,购买它,等等),让用户坐在那里,沿着列表走下去。
最重要的是不要告诉他们怎么做,而是看看他们如何完成任务(对于第二个场景,他们是按角色浏览还是按字母顺序查找场景?)你可以从你公司里不懂技术的人开始,然后到Craigslist网站或街上随便找个人来测试。
UI设计与其说是科学,不如说是艺术,它需要你对用户的理解和与他们感同身受的能力。
这和整天对着电脑说话是完全不同的。
我认为人们并不总是意识到这一点。
这里有一个小小的自我测试:看看FamFamFam的丝绸图标。考虑一下在您编写的上一个应用程序中选择哪个图标来表示各种功能。如果花超过十分钟的时间来做这件事让你的眼睛开始呆滞,那么UI设计可能不适合你。
程序员通常不擅长UI设计。有些设计师专门从事可用性和UI设计,当涉及到开发商业软件/网站/娱乐等时,他们应该受到尊重。
大多数程序员所面临的问题是,他们无法超越自己的鼻子,意识到什么能让事情更容易理解和消化。
最好的UI设计原则之一是始终将界面设计为简单且易于目标用户访问。
一个简单的例子就是电梯。一般来说,你按下按钮来打开/关闭门,以及穿越建筑物的楼层。你能想象如果你有旋钮和开关,你必须从一楼到二楼吗?如果你必须向后滑动一个面板来访问三个按键开关,你必须以特定的顺序转动三个彩色按键才能到达特定的楼层,那会怎么样呢?
你很快就会发现一个糟糕的界面是多么的困难,而一个好的界面是多么的简单和可用。