【问题标题】:Preferable technology that I should use to create an efficient and user friendly GUI?我应该使用哪种技术来创建高效且用户友好的 GUI?
【发布时间】:2009-10-31 22:18:07
【问题描述】:

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

我可以使用哪种最好的技术/工具/平台来构建更好的 GUI,通过它我可以构建美观且高效的 GUI?

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

【问题讨论】:

  • 具体来说,是用于 PC 和 Windows 操作系统的 GUI。
  • 给我们一些更多的细节: 1. 你在写什么样的应用程序? 2. 你要写多久? 3. 你介意你使用哪种语言吗?
  • @Andrew 我正在构建一个虚拟文件系统。所以我需要为此开发一个文件浏览器。我有一个相当大的时间(大约 8 个月 :) 任何与 .net 相关的东西都会够了

标签: user-interface frontend


【解决方案1】:

我知道这是一个关于您应该使用哪个 GUI 工具包的问题,​​但是您制作用户友好 UI 的第一项技术是笔和纸。画出一些模型。在施工纸上画出按钮和菜单,剪下来,粘在一起。然后在大约六个人身上尝试你的模型。您会很快发现什么才是好的用户界面。

无论用户界面看起来有多好,或者它是否使用了最新的时髦效果——如果您的用户不知道如何使用它,他们就会去别处。在编写一行代码之前,您需要了解什么对您的目标受众有效。

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

【讨论】:

    【解决方案2】:

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

    【讨论】:

    • 这背后的原因是什么?
    • 太牛了。我们几乎在同一时间发布了它(我在最后两分钟打开了这个窗口,忘记点击“添加评论”)。
    • 哈哈!这是史诗。我也很抱歉在 8 年后检查这些 cmets。 :D 那是很长很长的时间。干杯。
    【解决方案3】:

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

    【讨论】:

    • -1,.NET Framework 本身带有两个 GUI-Toolkits,WPF 和 WinForms。除此之外,使用 gtk# 甚至 gtk 小部件都可以在 .NET 中“本地”使用。
    【解决方案4】:

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

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

    【讨论】:

    • 他说他对最佳的定义包括效率。当然,排除 .NET ;-)
    【解决方案5】:

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

    【讨论】:

      【解决方案6】:

      这取决于。

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

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

      【讨论】:

      • 具体来说,是用于 PC 和 Windows 操作系统的 GUI。
      【解决方案7】:

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

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

      【讨论】:

        【解决方案8】:

        桌面、移动、Windows、Linux、数据库、OpenGL:Nokia Qt。 Wiht Python - PyQt 开发过程最短且容易。包含所有必需的 python 和 qt 库和模块的应用程序约为 30MB,Inno Setup 安装为 8MB,可在 Windows 2000 和更新版本的 Python 2.6.x 上运行,基于 Python 2.5.x 的应用程序将从 Windows 95 运行到 Windows 7。

        【讨论】:

          【解决方案9】:

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

          如果您首先对可用性感兴趣(听起来确实如此),请专注于设计,然后选择满足您当前能力并能够处理您的设计的任何工具包。例如,如果您需要可能缩小选择范围的 3D 图像;同样,如果您需要展示视频,这将影响您可以选择哪些工具包。

          所以,从一个好的设计开始。从中创建工具包的需求列表——丰富的编辑控件、视频、3D 等。然后寻找能够满足您需求的工具包。

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

          【讨论】:

            【解决方案10】:

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

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

            在 ListView 中,您对视图中的每个单元格/项目几乎没有自定义,因为您只提供详细信息,而不是实际控件,NSTable/UITable 要求 提供一个表格单元格 你可以添加任何东西,例如按钮、开关和图像视图。

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

            【讨论】:

              【解决方案11】:

              您考虑过 Silverlight 吗?

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

              Expression Blend 3 是一个非常出色的视觉设计器,它生成的代码非常高效。

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 2011-11-03
                • 1970-01-01
                • 2013-08-10
                • 2011-05-27
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多