我应该使用哪种优先技术来创建高效且用户友好的GUI?

时间:2009-09-20 19:57:18

标签: user-interface frontend

还有许多技术和工具可用于构建应用程序的前端。

哪个是最好的技术/工具/平台,我可以用它来构建更好的GUI,通过它我可以构建一个漂亮的外观和高效的GUI?

“更好”的定义包括效率,用户友好性,更好的内容控制机制,导航等等因素。

11 个答案:

答案 0 :(得分:6)

我知道这是一个关于您应该使用哪个GUI工具包的问题,​​但是您生成用户友好UI的第一个技术是笔和纸。勾勒出一些模型。在建筑纸上画出按钮和菜单,将它们剪下来,然后将它们粘在一起。然后尝试大约六个人的模型。您将很快发现什么是一个良好的用户界面。

UI看起来有多好或者它是否使用最新的时髦效果并不重要 - 如果您的用户无法弄清楚如何使用它,它们将会转移到其他地方。在编写一行代码之前,您需要了解适合目标受众的内容。

阅读Don't Make Me Think,了解如何制作模型并进行用户测试。

答案 1 :(得分:2)

如果您正在跟踪IP地址,那么您肯定希望在Visual Basic中创建GUI界面。

答案 2 :(得分:1)

在Visual Studio 2005/2008/2010 Studio中使用.NET框架。我还没有在任何其他环境中开发,但我已经能够在这个IDE / Framework中创建漂亮的应用程序。

答案 3 :(得分:1)

“最佳”取决于您的评估功能。

为了便于开发和高质量的用户界面,在非基于Web的应用程序中,基于Windows的应用程序很难击败C#/ VB或任何其他.NET语言和环境。根据UI的质量,MPF将为您提供更大的灵活性和控制力,而Windows窗体将使其更容易开发。

答案 4 :(得分:1)

使用Windows Presentation Foundation已经有一段时间了,我强烈推荐它。有一个非常大的学习曲线,说实话,MSFT应该包含一些默认不包含的控件(数据网格是最大的控件)(但将在.NET 4.0中)。 WPF和XAML超越的地方提供了一个基础,您可以从中构建任何东西。您可以设置ANY控件的任何部分,并从头开始构建自己的复合控件。很多想法都涉及绑定和值转换器,一旦你习惯了XAML的声明性质,你就不想回头了。我工作的公司已经使用它几年了,我们用来开发的GUI(主要是winforms和asp.net)和我们现在开发的内容之间的区别在于外观和日期感觉和功能。反正我的两分钱......

答案 5 :(得分:1)

这取决于。

GUI将用于什么设备,手持设备,PC,Mac? 什么平台Windows,Linux,Web? 什么样的应用程序,会计,电子邮件客户端,Web应用程序? 哪些观众将使用该应用程序(针对儿童的GUI可能与针对成年人的GUI不同)?

在开始制定问题答案之前,必须考虑所有这些因素。

答案 6 :(得分:1)

开发GUI有几种选择。 首先,如果跨平台是一个问题,请考虑使用Java或Python。 您也可以使用Adobe AIR并在Flex中开发gui。

如果您将产品定向到Windows,则用户.NET WPF是最佳解决方案,具有非常丰富的控件和示例。 您还可以将.NET与mono配合使用以实现跨平台兼容性,但目前不支持WPF。

答案 7 :(得分:1)

桌面,移动,Windows,Linux,数据库,OpenGL:Nokia Qt。与Python相比 - PyQt开发过程最简单。应用程序包含所有必需的python& qt库和模块大约30MB,Inno Setup安装大小为8MB,适用于Windows 2000,适用于Python 2.6.x,基于Python 2.5.x的应用程序将从Windows 95运行到Windows 7。

答案 8 :(得分:1)

我认为您列出的所有属性 - 效率,用户友好性等 - 都是良好设计的属性,而不是一个好的工具包。几乎任何工具包都可用于实现这些目标。我认为如果你问的是眼睛糖果,花哨的多媒体等问题可能会有所不同。肯定有一些工具包比其他工具包更好。

如果您对可用性感兴趣(听起来像是这样),请专注于设计,然后选择适合您当前能力的工具包并处理您的设计。例如,如果您需要可能缩小选择范围的3D图像;同样,如果您需要显示视频,这将影响您可以选择的工具包。

所以,从一个好的设计开始。从中,创建工具包需求列表 - 丰富的编辑控件,视频,3D等。然后查找提供所需内容的工具包。

世界上最好的工具包无法弥补糟糕的设计。

答案 9 :(得分:1)

在使用Win32,Forms和WPF然后进行Mac / iPhone GUI开发之后,我非常喜欢Mac / iPhone GUI中灵活性和高质量的视觉效果。

最有用的例子之一是在NSTable / UITable控件(Windows中的ListViews或类似控件)中,每个单元格都是完全可自定义的视图(Windows中的控件)。

在ListView中,您对视图中的每个单元格/项目进行的自定义非常少,因为您只提供详细信息,而不是实际控件,NSTable / UITable要求表格单元格< em> you 可以添加任何内容,例如按钮,开关和图像视图。

对我来说,Mac OS GUI开发在这方面更灵活,更灵活。一切都是一个视图所以我可以将自己的内容添加到任何内容中。

答案 10 :(得分:0)

您考虑过Silverlight吗?

它可用于创建Internet应用程序,但也可以在浏览器外运行以创建桌面应用程序。它与WPF有很大的重叠,虽然在从一个交换到另一个时可能会有一些差异。

Expression Blend 3是一个非常优秀的视觉设计师,它产生的代码非常有效。