我们中的一些人只是在 UI 设计的软方面遇到了困难( 尤其是我自己 )。“后端编码员”是否注定只设计业务逻辑和数据层?我们可以做些什么来 重新训练我们的大脑 ,使其更有效地设计令人愉悦和有用的表示层?
同事向我推荐了几本书,包括 《网站设计》 、 《不要让我思考 》和 《为什么软件很烂 》,但我想知道其他人做了什么来消除他们在这方面的不足?
让我直接说:
改进这一点并不是从指导方针开始的。 首先是重新定义您对软件的看法。
大多数铁杆开发人员对其软件的用户几乎 没有 同理心。他们 不知道 用户的想法,用户如何构建他们使用的软件模型以及他们如何使用计算机。
专家与外行发生冲突是一个典型的问题:一个正常人怎么会 傻到 不理解专家十年前的理解?
对于几乎所有有经验的开发人员来说,首先要承认的事实之一是难以置信地难以掌握:
普通人对软件的概念与你有很大不同。 他们对编程一无所知。没有任何。零。他们甚至不在乎。他们甚至认为他们不必在意。如果您强迫他们这样做,他们将删除您的程序。
现在这对开发人员来说是令人难以置信的苛刻。他为自己制作的软件感到自豪。他喜欢每一个功能。他可以准确地告诉你它背后的代码是如何工作的。也许他甚至发明了一种令人难以置信的聪明算法,使其工作速度比以前快 50%。
并且用户不在乎。
真是个傻瓜。
许多开发人员无法忍受与普通用户一起工作。他们对不存在的技术知识感到沮丧。这就是为什么大多数开发人员会回避并认为用户一定是白痴。
他们不是。
如果软件开发人员买了一辆车,他希望它能够顺利运行。他通常不关心轮胎压力,机械微调对于让它以这种方式运行很重要。在这里,他 不是 专家。如果他买了一辆没有微调的汽车,他会把它还给他,然后买一辆能做他想做的事。
许多软件开发人员喜欢电影。精彩的电影,激发他们的想象力。但他们不是制作电影、制作视觉效果或编写好电影剧本的专家。大多数书呆子在表演方面都非常、非常、非常糟糕,因为这完全是为了展示复杂的情绪,而很少涉及分析。如果开发人员看了一部烂片,他只会注意到它整体上很烂。书呆子们甚至建立了 IMDB 来收集关于好电影和坏电影的信息,这样他们就知道该看哪些电影,避免哪些电影。但他们不是制作电影的专家。如果电影不好,他们就不会去看电影(或者不从 BitTorrent 下载;)
所以它归结为:回避普通用户作为专家是 无知的。 因为在他们不是专家的那些领域(而且有很多),他们希望其他领域的专家已经考虑过使用他们的产品或服务的普通人。
你能做些什么来补救它?作为一名程序员,你越是铁杆,你对普通用户思维的开放就越少。这对你来说将是陌生和无知的。你会想:我无法想象人们怎么会 在 缺乏知识的情况下使用计算机。但他们可以。对于每个 UI 元素,请考虑:是否有必要?它是否符合用户对我的工具的概念?我怎样才能让他明白?请为此阅读可用性,有很多好书。这也是一个完整的科学领域。
啊,在你说之前,是的,我是苹果的粉丝;)