我们中的一些人只是在UI设计的软方面遇到了困难(尤其是我自己)。“后端编码器”注定只设计业务逻辑和数据层吗?我们是否可以做些什么来重新训练我们的大脑,使其更有效地设计出令人愉悦和有用的演示层?
同事们给我推荐了《网站设计》、《不要让我思考》、《为什么软件很糟糕》等几本书,但我想知道其他人在这方面做了什么来弥补他们的不足?
我们中的一些人只是在UI设计的软方面遇到了困难(尤其是我自己)。“后端编码器”注定只设计业务逻辑和数据层吗?我们是否可以做些什么来重新训练我们的大脑,使其更有效地设计出令人愉悦和有用的演示层?
同事们给我推荐了《网站设计》、《不要让我思考》、《为什么软件很糟糕》等几本书,但我想知道其他人在这方面做了什么来弥补他们的不足?
当前回答
一件容易的事。
开发人员不是设计师。他们没有接受过设计方面的培训或尝试学习,所以他们为什么要擅长UI设计之类的东西呢?这几乎等同于在说“为什么会计对某些开发者来说如此困难?”
UI设计本质上是设计,而设计是规则的视觉表现。擅长设计意味着你理解为什么某些东西应该以某种方式显示、运行和表现(例如,为什么链接应该突出显示,或者为什么标题应该在页面顶部)。
设计和开发是两种完全不同的东西,但都需要背景知识和实际工作。如果你不愿意花时间在其中一个科目上,那么你就不会很擅长它,不管你的一个程序/网站看起来有多好。
其他回答
我认为这是因为一个好的UI是不符合逻辑的。好的UI是直观的。
软件开发人员通常在“直观”方面表现不佳
一个有用的框架是积极地考虑你在设计一个沟通过程时所做的事情。在非常真实的意义上,你的界面是一种语言,用户必须使用它来告诉计算机该做什么。这导致我们考虑以下几点:
Does the user already speak this language? Using a highly idiosyncratic interface is like communicating in a language you've never spoken before. So if your interface must be idiosyncratic at all, it had best introduce itself with the simplest of terms and few distractions. On the other hand, if your interface uses idioms that the user is accustomed to, they'll gain confidence from the start. The enemy of communication is noise. Auditory noise interferes with spoken communication; visual noise interferes with visual communication. The more noise you can cut out of your interface, the easier communicating with it will be. As in human conversation, it's often not what you say, it's how you say it. The way most software communicates is rude to a degree that would get it punched in the face if it were a person. How would you feel if you asked someone a question and they sat there and stared at you for several minutes, refusing to respond in any other way, before answering? Many interface elements, like progress bars and automatic focus selection, have the fundamental function of politeness. Ask yourself how you can make the user's day a little more pleasant.
实际上,很难确定程序员认为界面交互是什么,除了交流过程之外,但问题可能是它根本没有被认为是任何东西。
要改进,只要看看现有的网站。除了已经推荐的书,你可能还想看看罗宾·威廉姆斯的好书《非设计师设计书》(亚马逊链接)。
通过看看禅宗花园提交的各种作品,看看视觉设计中有什么可能。
UI设计绝对是一门艺术,就像C语言中的指针一样,有些人懂,有些人不懂。
但至少我们可以对他们的尝试笑一笑。顺便说一句,感谢OK/Cancel的搞笑漫画,感谢Joel把它放在你的书“最好的软件写作I”(经过亚马逊链接的清理)中。
UI设计是一种完全不同的技能。它与视觉艺术密切相关——能够欣赏和创造视觉对称和美。不管出于什么原因,通常程序员都不擅长视觉艺术。我知道有例外,但作为一般规则,这是成立的。
所以真的(除非你是这条奇怪规则的例外)——这应该像处理其他你没有天赋的领域一样。你应该评估一下自己是否能和现有的技能很好地相处——或者甚至可以在有机会的时候花点精力来改进。然而,你最好在自己擅长的领域发展,也许可以寻求在你所不擅长的领域与高手合作。
Marcus Buckingham写的《现在,发现你的优势》是一本很好的书。这本书很容易读。
无论你怎么做(上面有一些很棒的观点),它真的帮助了我,一旦我接受了没有这样的事情作为直觉....
我能听到地平线上争论的隆隆声……我来解释一下。
直觉的:基于一种无意识的方法或感觉,使用自己感觉正确或真实的东西。
如果(正如卡尔·萨根(Carl Sagan)所假设的那样)你接受你无法理解与你所遇到过的任何事物完全不同的事物,那么如果你从未使用过类似的东西,你怎么可能“知道”如何使用它呢?
想想看:孩子们试图打开门,不是因为他们“知道”门把手是如何工作的,而是因为他们看过别人这样做……他们经常把旋钮转错方向,或者拉得太快。他们必须学会如何使用门把手。然后,这一知识被应用到不同但相似的例子中:打开窗户,打开抽屉,打开几乎任何有大把手的大东西。
即使是对我们来说很直观的简单事情,对来自其他文化的人来说也完全不是直观的。如果有人把他们的手臂伸出在他们面前,并放弃他们的手在手腕上,同时保持手臂静止....他们放弃你了吗?可能吧,除非你在日本。在那里,这个手势可以表示“过来”。那么谁是对的呢?当然,两者都有各自的背景。但如果你两个都去过,你就需要了解它们……UI设计。
我试着找到我项目的潜在用户已经“熟悉”的东西,然后围绕他们构建UI:以用户为中心的设计。
看看苹果的iPhone吧。即使你讨厌它,你也必须尊重它所付出的心血。它完美吗?当然不是。随着时间的推移,物体感知的“直觉性”可能会增长,甚至完全消失。
为例。大多数人都知道,一条顶部和底部有两排孔的黑色带子看起来像一条薄膜带……真的是这样吗?
问问普通9岁或10岁的孩子,他们是怎么想的。你可能会感到惊讶,现在有多少孩子很难把它认出来是电影连环画,即使它仍然被用来代表好莱坞,或任何与电影有关的东西。过去20年里,大多数电影都是用数字技术拍摄的。我们最后一次拿着照片或胶片是什么时候?
所以,对我来说,这一切都归结为:了解你的受众,不断研究,以跟上“直观”事物的趋势和变化,瞄准你的主要用户,尽量不要为了支持高级用户而惩罚没有经验的用户,或者为了帮助新手而减慢高级用户的速度。
最终,每个程序都需要用户经过一定程度的培训才能使用。培训多少以及针对哪个级别的用户是需要做出决策的一部分。
根据您的目标用户过去作为人类、计算机用户或学生的经验水平,有些东西或多或少是熟悉的。
我只是瞄准钟形曲线中最胖的部分,并试图获得尽可能多的人,但意识到我永远不会取悦所有人....