有些人在UI设计的柔性方面(尤其是我自己)遇到了困难。 "后端编码员"注定只能设计业务逻辑和数据层吗? 有没有什么方法可以让我们"重新训练大脑",以设计出更令人愉悦和有用的表现层?
同事们向我推荐了一些书,包括《网站设计》、《别让我思考》和《为什么软件糟糕》,但我想知道其他人在这个领域中如何消除他们的不足之处?
有些人在UI设计的柔性方面(尤其是我自己)遇到了困难。 "后端编码员"注定只能设计业务逻辑和数据层吗? 有没有什么方法可以让我们"重新训练大脑",以设计出更令人愉悦和有用的表现层?
同事们向我推荐了一些书,包括《网站设计》、《别让我思考》和《为什么软件糟糕》,但我想知道其他人在这个领域中如何消除他们的不足之处?
为您的母亲设计它。
我使用我所谓的“奶奶测试”。
“良好的UI设计”实际上有两个问题:
这两个问题都很难。根据我的经验,这两个问题应该并行探索,以免在项目后期出现不愉快的惊喜(“为什么我们性感的拖放在IE8中超级慢??你是说它无法修复吗???”)
要获得正确的设计,您需要探索可能性。书籍可以指导您尝试对您的情况最有意义的事物-当然,经验更好。此外,您绝对需要来自真实用户的反馈-否则,您怎么知道设计已经正确?(您肯定不能告诉..继续阅读!)
“正确地实现设计”则是下一个问题,因为这意味着您找到的适当设计必须得到实施。
那些与“用户体验 / 图形用户界面”有关的事情很难,因为找到正确的答案涉及理解人类想要什么-而他们无法客观地告诉你,而你自己也无法从“外部”得知。这意味着(体验)引导的试错方法是唯一可行的方式。
为了更清楚地回答你的问题:
为什么对于一些开发人员来说,好的UI设计如此困难
对于专业的开发人员来说,一个大问题是他们对软件工作原理的理解与用户认为的工作原理非常不同(例如URL“www.stackoverflow.com”应该写成“com.stackoverflow.com”,如果你了解DNS的工作原理,但试着销售一个期望像这样的URL的浏览器 :))。
顺便说一句:我建议你研究“体验设计”而不是“用户界面设计”,但那是另一回事。
我为社交圈之外的人设计了一个程序,并观察了他们的行为。在这个过程中,我不再受到朋友的偏见、自己的骄傲和自我影响。通过改进应用程序,我变得更加谦虚,对设计问题更加敏感。我学会了任务导向设计的重要性,以及简单性的重要性。我也明白了拥有太多功能的代价。随着经验的积累,你也会明白。
以下是我强烈推荐的一些参考资料:
以下是我强烈建议您忽略的一些参考资料和理念:
一般来说,程序员在UI设计方面往往不擅长。当开发商业软件/网站/娱乐等时,应该尊重那些专门从事可用性和UI设计的设计师。
大多数程序员的问题在于他们无法超越自己的眼界,意识到什么能让事情更容易理解和消化。
最好的UI设计原则之一是始终将接口设计为简单易用,适合您的目标用户。
一个很好且简单的例子是电梯。通常,您按按钮打开/关闭门以及穿过建筑物的楼层。如果您必须翻转旋钮和开关才能从1楼到2楼,或者必须滑动面板才能访问三个关键开关,这些开关有三个彩色钥匙,您必须按特定顺序旋转才能到达某个楼层,您能想象吗?
您可以快速看到糟糕接口的困难程度以及良好接口的简单易用性。
我相信所有计算机科学程序员都有能力产生良好可用的设计,因为可用性设计要求开发人员沿着某些路径和规则思考。而对于某些程序员来说,开发出一个好看的设计几乎是不可能的。这并不意味着两者不可避免地相关联。就像莫扎特能够创作美丽的音乐,但并不擅长足球一样。