User interface 设计图形用户界面
作为一个几乎没有(或根本没有)艺术倾向的开发人员,您将如何为应用程序设计GUI?特别是,我正在考虑桌面应用程序,但任何与Web应用程序相关的东西都是受欢迎的。 我发现要设计出令我和潜在用户都满意的东西非常困难。我可以在网上查找配色方案,但我如何知道按钮/文本框等的放置位置 更新:澄清一下,我不是指使用什么控件之类的。更确切地说,对于何时应该使用按钮、组合框、文本框等,是否有任何指导/提示?它们应该有多长时间?我应该把它们放在表格的什么地方?你读过了吗User interface 设计图形用户界面,user-interface,desktop,User Interface,Desktop,作为一个几乎没有(或根本没有)艺术倾向的开发人员,您将如何为应用程序设计GUI?特别是,我正在考虑桌面应用程序,但任何与Web应用程序相关的东西都是受欢迎的。 我发现要设计出令我和潜在用户都满意的东西非常困难。我可以在网上查找配色方案,但我如何知道按钮/文本框等的放置位置 更新:澄清一下,我不是指使用什么控件之类的。更确切地说,对于何时应该使用按钮、组合框、文本框等,是否有任何指导/提示?它们应该有多长时间?我应该把它们放在表格的什么地方?你读过了吗 或者阅读wikipedia的文章:它包含一些
或者阅读wikipedia的文章:它包含一些高层次的链接,如果你是为桌面设计的,你可以找到操作系统界面的指南,这会有所帮助。Joel Spolsky有一个非常好的高级设计技巧:
除此之外,最大的事情就是尝试一些东西,制作模型。可能是纸面上的初始版本,但在某个时候,只需尝试组装一个GUI,而不必连接后面的代码。看看你的想法,尝试一些改变,征求其他人的意见,然后进行实验。最好的设计技巧是从人们那里获得反馈,如果可能的话,最好是从目标受众那里获得反馈。不清楚您是在谈论如何创建一个好的对话框窗口,还是如何为一个巨大的应用程序创建一个连贯的外观
如何设计一个有效和清晰的用户界面,一个很好的参考是。。。等等。。。Joel Spolsky。您需要做的第一件事就是离开开发人员的视角。我们倾向于从表单、控件、按钮、列表、网格等方面进行思考,这往往会促使我们找到对用户来说并不总是最优的解决方案 用户不想使用我们的软件。(除非你在编程游戏)他们只是想把事情做完。因此,在设计UI和用户交互时,有必要从这里开始。写下用户想用你的软件做什么。考虑一下用户将如何着手做这些事情,以及您的应用程序可以做些什么来简化这些事情
尝试使用与编程不同的工具。这些让您再次在UI小部件中思考。首先用铅笔和一张纸来画东西,也试着思考行为以及布局等。如果你对你想要建造的东西有了清晰的了解,你可以开始思考你将如何建造它。这时小部件、按钮和页面就出现了。这可能会有所帮助:从应用程序的角度考虑一下用户是谁。有一种吗?更多然后,对于每种类型的用户,考虑他们想要完成的最重要的事情。向他们展示这些一般选择,然后为每个任务进入更合适的界面
最后,如果您有一大组步骤,那么向导很好,因为它允许您一次一个地验证每个步骤。这在本机应用程序上很明显,但在web上非常方便。在本页所述的所有内容中,我想补充一点,您注意到的GUI越少越好
我的意思是,当用户没有感觉到用户界面时,那是因为用户正在完成他/她的工作。当用户注意到GUI时,(a)它很漂亮(想想苹果)或(b)它很糟糕(想想你使用过的任何让你感到沮丧的GUI)。我从未将GUI设计视为一种基本的艺术活动。设计良好的用户界面确实可以通过艺术元素来增强,但设计底层用户界面实际上是一项工程工作。当然,在较大的项目中,GUI专家是一种自然的专业化,就像拥有构建专家一样。但是我认为,很少有软件工程师不能创建有效的GUI——如果他们有时间和资源这样做的话
我们中的大多数人通过认识到现有系统中的优点,然后卷起袖子进行创新,并通过坚持直到它起作用,从而学到了我们所知道的关于构建系统的大部分知识。GUI也不例外。我开发的应用程序每小时会被点击数千次,所以一切都取决于效率。我喜欢把它看作一种货币,你可以用它产生许多有用的公理: 如果保存一次单击,+1 如果它需要点击一次,-1 如果用户浪费时间弄清楚它是如何工作的,-1。(大多数自定义UI元素) 如果它从根本上是直观的,+1。(覆盖流) 如果它保存了第一次用户的点击,+1。(巫师) 如果它需要长期用户点击一次,-1。(巫师) (因此,您必须确保键盘快捷键和制表符顺序有意义。) 等等 等等
每件事都会主观地加权和计数,你会在必须的地方妥协。说到底,这可能是一种幼稚的哲学,但它对我很有用。根据您认为合适的情况进行推断。上面有一些用户界面模式,您可能会发现它们很有用 通常,如果您正在为windows设计表单,请遵循各种microsoft标准
我记住的一个原则是使用人们已经知道的现有行为模式(双击执行/激活项目等)。事实上,我选择的是前者。反应非常好。一个++++会再读一遍。我还建议您向您的用户展示手绘模型,以供早期评论。手绘非常重要-没有功能或计算机绘图-它们使UI看起来比您想要表达的更接近完成。此外,不要忘记操作系统供应商提倡/强制要求的设计准则。这些可以确保您的应用程序以用户已经熟悉和精通的方式运行。例如,对话中的“确定”、“取消”和“应用”按钮的位置和顺序。感谢