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

设计更好的GUI?[关闭]

  •  10
  • Zack  · 技术社区  · 17 年前

    我已经使用C有一段时间了,但还没有真正掌握我的UI设计技能。在我设计它们的时候,我发现自己很喜欢这个设计,但后来,我回首过去,看到了可怕的作品。我的工作项目中出现了一个例子,我必须使用127个按钮来表示实验室中的127台计算机。/

    我想知道是否有人能推荐我去一个网站或一本书来教好的用户界面设计?

    谢谢!

    10 回复  |  直到 16 年前
        1
  •  7
  •   David McGraw    17 年前

    我相信 观察 和 本能 帮助很大。

    使用应用程序并深入了解它们实现的功能。尤其是看看苹果,因为他们围绕着美学。什么工作?什么没有?为什么它会起作用?在修补网站和软件时,开始问自己问题。

    然后我会四处游玩,设计一些概念。向朋友展示这些概念,包括技术和非技术。问他们一些问题,比如“给名单上加一杯新酒”或者“给我找X”,看看他们的反应如何,彼此之间有什么不同。有技术背景的人通知按钮的速度比不懂技术的人快吗?你应该把元素结合在一起吗?

    这东西应该很有趣。毕竟,这就像建立一套完整的乐高玩具,并向你的朋友炫耀。他/她可以看到、触摸和玩你的作品。

        2
  •  7
  •   Alex McBride    17 年前

    乔尔·斯波斯基写了一本书,叫做《面向程序员的用户界面设计》,这是一本很好的书,也是一本简略的版本。 can be found online .

        3
  •  3
  •   Breton    17 年前
        4
  •  2
  •   haqwin    17 年前

    首先要关注的是工作流程。尝试找到用户拥有的目标,并创建一个模型,以尽可能有效地实现该目标。另外,阅读这本最好的书之一是 Inmates are running the asylum

    我建议在这里画很多草图。一定要保持简单化,把注意力集中在事物的位置和位置上,而不是集中在事物的外观上。像这样的工具 balsamiq 非常适合快速的用户界面模型。也可以通过这里的用户界面模式来提出有效的概念,Tidwells的书 Designing Interfaces 很好,而且基础设施也是新的 patterns site 是很好的资源

    现在您已经对您想要做什么有了一个想法,现在是时候将接口组合起来了。在从第一个草图到最后一个像素的过程中,始终进行用户测试。

    而且不要总是遵循用户界面的指导原则,如果你有充分的理由可以打破它们。最后,在一个界面中,你只会得到一个免费的不相关的3D效果:)

        5
  •  1
  •   bouvard    17 年前

    基于Vinay的答案,在设计界面时,与目标平台集成始终是最重要的。如果您是在Windows上开发的,请确保您忠于该平台的外观、感觉和可用性预期。接口指南总是一个起点,尽管有些比其他的更好。为了我的钱的价值, GNOME Human Interface Guidelines 是设计用户友好界面的一套很好的指导方针,即使您不使用GTK。

    一般来说,学习好的设计实际上是在学习 认出 好的设计。找到一些非常直观的应用程序,然后模仿它们的布局、样式等。然后,当您在如何实现特定功能方面遇到困难时,在这些其他应用程序中找到一个合适的模拟。您需要特别注意分组、制表、快捷方式、对话模式等问题。我认为您会发现很少有好的设计原则依赖于您所用的语言,除非它可能影响您所要使用的工具箱和平台。

        6
  •  1
  •   Matt Davis    17 年前

    我读过斯波斯基的书 面向程序员的用户界面设计 以及经典 软件设计的Windows界面指南 和 Windows用户体验。 后两本是很好的参考书。斯波斯基的书是一本非常有趣的书,教你如何思考用户界面设计。

    不过,就我而言,设计桌面应用程序的用户界面的最佳方法是从流行的软件中复制现有的解决方案。通过“复制”,我指的是两个截然不同的方面——机制和美学。

    至于 机制 值得关注的是,确保您的用户界面按照人们期望的方式工作。例如,如果有TreeView,请确保键盘箭头可用于导航。如果窗体有滚动条,请确保它响应鼠标上的滚动轮。总的来说,.NET控件在默认情况下提供标准行为,但是您可能需要配置一些设计时属性来完全实现这一点。几年前我有一个控件库,它提供了一个标准的文本框。不过,我发现,当我切换到控件中时,文本不会自动突出显示。我添加这个行为是因为它是我(和我的用户)期望控件工作的方式。引用Spolsky的话,“一致性会带来易用性,这反过来又会带来好感……”换句话说,如果你的用户界面机制与你的用户期望的不匹配,你的用户界面将成为你的用户沮丧的根源。

    至于 美学 我发现,关注字体、图标、控件之间的间距和对齐方式、颜色的选择性使用(我喜欢使用渐变)等内容可以为您的用户界面添加这种润色感。众所周知,我在画图中使用位图屏幕捕获来测量控件之间的填充,以模拟Microsoft应用程序中的填充。当我向同事透露这些信息时,他们中的大多数人看着我,好像我已经失去了理智。但我不能简单地通过关注其他人认为无关紧要的东西来告诉你我已经取得了多少用户界面成功。我把这归结为简单地利用微软在使他们的应用程序具有视觉吸引力方面所做的所有研究。

    所以我的建议是阅读斯波斯基的书,然后尽可能多地复制微软的应用程序。对于桌面应用程序,这是最可靠的方法。

        7
  •  1
  •   mattruma    17 年前

    花点时间看看 其他 软件产品。每年,像谷歌和微软这样的公司都会投入数百万美元进行可用性测试。把他们学到的关于用户交互的知识应用到你自己的产品/项目中。

    基础架构还为UI设计模式创建了一个很好的参考,可以在 http://quince.infragistics.com/ .

        8
  •  0
  •   worbel    17 年前

    我认为最好的办法是练习。我喜欢先在纸上设计我的窗口(空白或图表纸)。使用直尺,确保物品对齐并清洁。

    我的工作项目中出现了一个例子,我必须使用127个按钮来表示实验室中的127台计算机。/

    在这里问你自己,我不喜欢这件事吗?如何改进?我需要下拉列表还是计算机列表框?

    也知道你的 GUI widgets .

        9
  •  0
  •   Vinay    17 年前

    您可以参考Windows UI指南或Mac UI指南。

    Mac用户界面指南可在 http://developer.apple.com/documentation/userexperience/Conceptual/AppleHIGuidelines/XHIGIntro/chapter_1_section_1.html

    Windows UI指南可在 http://msdn.microsoft.com/en-us/library/aa511258.aspx

    编辑: 大家都喜欢谷歌用户界面这里是 link .

        10
  •  0
  •   Andy Dent    17 年前

    答案已经给出了一些关于如何具体设计接口的好书。我想提出一些建议来帮助您改进 鼻子 用于设计。其中一些可能是廉价的二手书,或者一些你可以在当地借的书(我总是愿意把书借给西澳大利亚珀斯的人):