代码之家  ›  专栏  ›  技术社区  ›  Yuval

设计GUI[关闭]

  •  11
  • Yuval  · 技术社区  · 16 年前

    作为一个很少(或没有)艺术爱好的开发人员,您将如何为应用程序设计一个GUI?特别是,我在考虑桌面应用程序,但是任何与Web应用程序相关的东西都是受欢迎的。 我发现很难设计出令我和潜在用户都满意的东西。我可以在网上查找配色方案,但我如何知道在哪里放置按钮/文本框等?

    更新:为了澄清,我不是说要使用什么控件等。相反,我应该何时使用按钮、组合框、文本框等有什么指导方针/提示吗?他们应该呆多久,我应该把他们放在表格上的什么地方?

    11 回复  |  直到 6 年前
        1
  •  21
  •   community wiki Mendelt    16 年前

    你需要做的第一件事就是从你的开发者的角度出发。我们倾向于从窗体、控件、按钮、列表、网格等方面进行思考,这往往会促使我们找到不总是最适合用户的解决方案。

    用户不想使用我们的软件。(除了你在编程游戏时)他们只想把事情做好。因此,当停止UI和用户交互时,从那里开始是有意义的。写下用户想用你的软件做什么。想想用户将如何进行这些操作,以及您的应用程序可以做些什么来简化这些操作。

    尝试使用与编程不同的工具。这些让您再次在UI小部件中思考。从一支铅笔和一张纸开始画出草图,同时试着考虑行为以及布局等。如果你对你想要构建的内容有一个清晰的了解,你可以开始考虑如何构建它。这时小部件、按钮和页面就出现了。

        2
  •  5
  •   bouvard    16 年前

    我开发的应用程序每小时被点击数千次,所以一切都归结为效率。我喜欢把它看作一种货币,你可以用它产生许多有用的公理:

    如果它保存了一个点击,+1。

    如果需要点击一次,-1。

    如果用户浪费时间弄清楚它是如何工作的,-1。(大多数自定义UI元素)

    如果它从根本上是直观的,+1。(覆盖流)

    如果它保存了第一次用户的点击,+1。(巫师)

    如果它需要长期用户点击,-1。(巫师)

    (因此,为什么您必须确保键盘快捷键和选项卡顺序是有意义的。)

    等。

    等。

    每件事都会得到主观的权衡和统计,你在必须的地方妥协。归根结底,这可能是一种幼稚的哲学,但它对我很有帮助。根据你认为合适的外推。

        3
  •  3
  •   albertein    16 年前

    你读过吗? http://msdn.microsoft.com/en-us/library/aa511258.aspx ?

    或者阅读维基百科的文章: http://en.wikipedia.org/wiki/Human_interface_guidelines 它包含到某个hig的链接

        4
  •  2
  •   schonarth    16 年前

    除此之外,我还要补充一点 你越不注意到一个图形用户界面,它就越好。 .

    我的意思是,当用户感觉不到用户界面时,这是因为用户正在完成他/她的工作。当(a)它很漂亮(想想苹果)或(b)它很糟糕(想想你用过的任何图形用户界面都让你沮丧)时,用户会注意到这个图形用户界面。

        5
  •  2
  •   Community CDub    8 年前
        6
  •  1
  •   Mark Cidade    16 年前

    如果你为桌面设计,你可以找到操作系统接口的指导方针,这可以帮助你。

        7
  •  1
  •   Davy8    16 年前

    Joel Spolsky有一个非常好的高级设计技巧:

    http://www.joelonsoftware.com/uibook/chapters/fog0000000057.html

    除此之外,最大的事情就是尝试一些东西,制作模型。可能是纸上的初始版本,但在某个时刻,只需尝试在不连接后面的代码的情况下组装一个GUI。看看你的想法,尝试一些改变,征求别人的意见,然后尝试一下。最好的设计技巧是从人们那里得到反馈,如果可能的话,最好是从目标受众那里得到反馈。

        8
  •  1
  •   eaolson    16 年前

    现在还不清楚您是否在谈论如何创建一个好的对话窗口,或者如何为一个巨大的应用程序创建一个连贯的外观和感觉。

    如何设计一个有效清晰的用户界面是一个很好的参考 User Interface Design for Programmers 通过…等等……Joel Spolsky。

        9
  •  0
  •   easeout    16 年前

    只需从应用程序的角度考虑您的用户是谁。有没有一种?更多?然后,对于每一种用户,想想他们想要完成的主要任务。向他们展示那些一般的选择,然后从中为每个任务提供更合适的接口。

    最后,如果您有一组很大的步骤,那么向导是很好的,因为它允许您一次验证一个步骤。这在本地应用程序上很明显,但在网络上非常方便。

        10
  •  0
  •   Chris Noe Paweł Dyda    16 年前

    我从未将图形用户界面设计视为一种基本的艺术活动。虽然一个设计良好的用户界面确实可以用艺术元素来增强,但是设计底层用户界面实际上是一项工程工作。当然,在更大的项目中,GUI专家是一种自然的专业化,就像拥有构建专家等一样。但我认为,在给他们时间和资源来创建有效的GUI时,很少有软件工程师能够做到这一点。

    我们中的大多数人通过认识到现有系统中的善,然后卷起袖子和创新,并坚持到它发挥作用,从而了解了关于构建系统的大部分知识。图形用户界面也不例外。

        11
  •  0
  •   user18443    16 年前

    有一些UI模式显示在 the UI patterns site 你会发现有用的

    通常,如果要为Windows设计窗体,请遵循各种Microsoft guidelines .

    我牢记的一个原则是使用现有的行为模式(双击以执行/激活项目等),因为人们已经知道这些。