Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Language agnostic 如何提高应用程序的主观速度?_Language Agnostic_User Interface_User Experience - Fatal编程技术网

Language agnostic 如何提高应用程序的主观速度?

Language agnostic 如何提高应用程序的主观速度?,language-agnostic,user-interface,user-experience,Language Agnostic,User Interface,User Experience,今天,我的同事注意到,在进度指示器上添加一个小数位会给人一种印象,即程序运行速度比没有小数位时快。(即,不是1,2,3…它显示1,1.2,1.4,1.6…)我检查了它,我很惊讶我得到了相同的印象,尽管我知道它是伪造的 这让我想知道:还有什么其他东西可以给人留下快速应用程序的印象? 当然,最好的方法是实际提高应用程序的速度,但从算法的角度来看,您通常无能为力。此外,我认为让用户不那么沮丧是一件好事,尽管这或多或少是一种心理技巧。首先展示一些中间的、有趣的结果。“我们发现2359个zetuyls符合

今天,我的同事注意到,在进度指示器上添加一个小数位会给人一种印象,即程序运行速度比没有小数位时快。(即,不是1,2,3…它显示1,1.2,1.4,1.6…)我检查了它,我很惊讶我得到了相同的印象,尽管我知道它是伪造的

这让我想知道:还有什么其他东西可以给人留下快速应用程序的印象?


当然,最好的方法是实际提高应用程序的速度,但从算法的角度来看,您通常无能为力。此外,我认为让用户不那么沮丧是一件好事,尽管这或多或少是一种心理技巧。

首先展示一些中间的、有趣的结果。“我们发现2359个zetuyls符合您的要求,我们只是在计算它们的未来价值”

我见过交通预订系统在这方面做得很好。

显示详细信息(例如安装过程中复制的文件名)通常会让事情看起来进展得更快,因为有持续的、明显的活动(而不是缓慢爬行的进度条)


如果您的算法生成一个结果列表,并且您可以在生成结果时以某种方式显示结果(而不是在最后一次显示所有结果),那么就这样做-用户越早可以看到除微调器之外的其他内容,更好。

这种效果可能非常显著:为用户提供正确且经常更新的进度状态所做的大量工作当然可以降低应用程序的实际运行时间(屏幕更新、进度显示所需的计算等),同时仍然让用户感觉所需时间更少

您可以在GUI中执行的一些操作:

  • 在后台处理过程中,请确保应用程序保持响应(可以调整表单大小,或者为操作提供一个取消按钮?)
  • 在整个应用程序中显示状态消息/沙漏光标时要非常一致
  • 如果您在操作过程中更新了某些内容,请确保它经常更新(例如在安装过程中几乎荒谬地显示文件名和注册表项),或者确保

    • 允许用户在应用程序处理数据或等待结果时执行其他操作。在应用程序范围中,您可以允许对搜索查询进行一些细化,或者收集信息以准备下一步。或者只是介绍一些需要做的其他“工作”,或者只是一些提示、文档、统计数据、娱乐。

      使用其中一个动画进度条,即使在没有进展的情况下,它们看起来也在做一些事情。此外,正如peSHIr所说——打印复制的每个文件名并快速更新——你甚至可以通过每秒N次在一个大字符串数组中循环来伪造它。

      我在某个地方读到,如果这个过程似乎在加快,它似乎比以稳定的速度进行时要快。我现在找不到引用,但它应该很容易实现

      (10分钟后……)

      进一步查看Google lane发现了以下参考资料:


      在关键点添加线程睡眠。对于每一个经过的版本,减少延迟。

      这里有一篇关于时间和用户感知的文章。我不知道这是否正是您所期望的答案,但它绝对值得一读。

      +1表示“确保您的应用程序保持响应”。这是我最讨厌慢程序的地方。讽刺的是,通过频繁的视觉更新,让程序看起来更快,实际上却让它慢了一点。@liran,这都是关于信息的需要。如果你没有得到任何反馈,这可能需要无限的时间。它让用户可以估计操作需要多长时间,然后去喝杯咖啡。注意使用动画进度条。如果我看到其中一个太长时间,我会假设进程已经进入无限循环并杀死它。几年前,我安装了一个Linux发行版,它在询问配置问题时已经下载并安装了基本包。在那之后,你可以一边玩俄罗斯方块一边等待下载。几年前?几年前发行的发行版是什么?我印象深刻。我想你正在寻找指向vista文件复制功能的链接。就我个人而言,我认为这个想法是错误的每个人可能都曾经这样做过,即使是开玩笑。我称之为Scotty方法阿隆是对的:这只是邪恶的极端,所以我不得不-1你认真地建议它。。。