我们已经使用GUI和CHUI构建了产品。展望未来,我们正在考虑重新设计我们的许多软件,并主要采用所有GUI的路线。我对小组的问题是,我们是否需要考虑保持CHUI? CHUI优于GUI有什么优势?过去很多时候人们都说CHUI比较快,因为你不需要鼠标。我认为使用正确的键盘快捷键,热键和/或触摸屏,GUI可以同样快速。
如果硬件不再提供约束,我们应该不再考虑CHUI吗?
另外澄清的是,当我谈到CHUI时,我的意思是基于CHaracter的用户界面,我也主要关注向最终用户有效呈现数据。
有一些很棒的回应强调了基于命令行的界面对于自动化和基于脚本的任务的重要性,我们在开始设计时一定会牢记这一点!
答案 0 :(得分:14)
您应该轮询您的客户,而不是程序员。如果您的客户使用您的应用程序需要CHUI,即使您的所有开发人员都认为这是浪费时间,您也可以构建它,因为客户总是正确的(除非他们错了)。
答案 1 :(得分:14)
CHUI的主要优点(即表单和字段,不一定是命令行界面)是用于导航和一致布局的键盘。这是关键。
如果您的GUI可以完全,高效,键盘导航,那么您的CHUI用户群应该感到高兴。这是因为在时间上,用户只需将其命令“键入”到系统中而不“看到界面”。他们不需要“发现”界面,这是GUI的主要特征。
虽然CHUI似乎是恐龙,但它们仍然具有功能性和可用性。大多数人一旦接受过培训(特别是POS /柜台工作人员,但即使是工厂或仓库等后台办公场所等)使用CHUI也没有问题。
但关键是键盘支持,因此用户无需等待屏幕赶上它们。通过掌握键盘看熟练的操作员可以使应用程序飞行。你几乎没有机会看到弹出窗口,什么不是。
答案 2 :(得分:10)
你绝对应该考虑它。最重要的是,命令行程序可以比GUI(通常)更容易自动化(并在脚本中链接在一起)。我无法想象使用没有命令行界面的源代码控制工具 - 尽管显然有一个GUI也很有用。
现在,如果不知道应用程序的功能,您是否需要特定应用程序的命令行版本很难说。你需要自动化和脚本吗?有人可能想要VPN并从一个非常糟糕的连接运行它,因此欣赏低带宽?
请注意,MS当然不相信命令行已经死了 - 或者他们不会创建PowerShell。
答案 3 :(得分:5)
我同意Eli的说法,你的客户应该有最终决定权,但如果你能保持你的程序的内容与GUI(或CHUI)交织在一起,那么生产成本可用的应该是最小的。
答案 4 :(得分:5)
如果您为unix编写应用程序,并且需要处理telnet / ssh到您的盒子的用户,那么您将需要命令行界面。
我会说这取决于你的目标。您是否从其他应用程序编写代码?这将是保持交互式版本(或某些部分以避免GUI启动)的要求。
我们通常做一个或另一个。但有时我们有必须通过ftp部署并运行ssh的util。或者我们的用户可以将这些工具嵌入到他们的应用中,并且不希望公开UI(数据迁移/转换)。
答案 5 :(得分:4)
直到今天,我见过的一些最有效的用户界面都是普通的基于终端的字符界面。
轶事:我曾经是500个客户服务代表使用的终端应用程序“现代化”项目的一部分。我们发布了性感的GUI模型,每个人,包括用户,都给人留下了深刻的印象。我们在申请上工作了六个月,所有用户验收测试似乎表明我们有一个胜利者。
但是当应用程序最终启动时,它失败了。事实证明,每天都会测量CSR的性能,直至每个呼叫处理的平均秒数。无论他们如何努力,他们都无法在终端界面中与GUI中的效率相匹配。他们可以通过标签和快捷方式接近,但不是很完整。
经验教训。现代程序员可能会厌恶“恐龙”,但用户真的关心光滑的界面吗?通常他们只是想完成他们的工作。
答案 6 :(得分:3)
当我第一次阅读本文时,我的直接想法是,这可能是那些基本上是一系列表单的应用程序之一,但显示在终端内部。通常你会看到这样的恐龙在收银机上运行。我还记得在买车的时候看到这样的应用程序用来申请贷款。这种类型的应用程序似乎在现代世界中没有地位 - 任何具有微处理能力的系统现在都可以处理普通的GUI。除非您尝试支持真正的低端遗留客户,否则请摆脱此用户界面。一个具有不错的键盘快捷键的GUI(请,请将一些想法用于仅使用GUI程序的键盘...)对于来自旧CHUI系统的用户来说同样有效,并且对于那些习惯用户来说更加友好一个GUI,无需拥有2个版本的应用程序。
我不明白为什么每个人都在提出命令行应用程序。我想大多数人都认识到命令行不会消失。对于许多任务而言,它比GUI快得多,主要是因为程序往往是非交互式的(因此很容易编写脚本)。一旦您的应用程序变为交互式(或者,至少没有让它成为非交互式的参数),从命令行运行它就不那么重要了。甚至像Vim这样基于终端的令人敬畏的程序也正在转换到它们的图形对应物(gVim),因为它可以为你提供两全其美的效果。
答案 7 :(得分:2)
即使像Firefox这样的GUI应用程序也可以从Ubiquity等命令行界面中受益。如果有一种方法可以在GUI中提供命令行,那么为什么不能同时拥有这两个领域的优势?
许多CAD程序都有命令行界面,可以向您显示刚刚执行的GUI交互等同于命令行。通过这种方式,您可以了解经常执行的操作的命令行操作,以及命令行可以更快地与whist进行交互的位置,同时还具有GUI界面的可发现性。
参见this youtube video演示Rhino3D的命令行
答案 8 :(得分:1)
CHUI的执行速度更快,而不是用户交互速度。我编写嵌入式系统(以及GUI),因此我总是可以使用命令行应用程序。
答案 9 :(得分:1)
我读过的每项研究都表明CHUI对有经验的用户来说要快得多。对于新用户和仅偶尔使用的应用程序,GUI更容易。此外,对于给定的屏幕尺寸,您可以在CHUI上显示有关GUI的更多信息。一个好的GUI可以让您快速浏览一下。
答案 10 :(得分:1)
除了上面提到的其他好处之外,我经常发现另一个保留替代用户界面的理由 - 让您和您的界面保持诚实。当应用程序只使用一个用户界面构建时,让设计原则滑动以及您的业务逻辑等变得更容易,并且您的GUI成为意大利面条的交织在一起 - 尽管有最好的意图。无论您的客户拥有命令行界面的重要性,很快就会出现可能需要替代GUI(读取:表示层),并且您需要做好准备的时间。这可能与您的要求无关,但我认为记住这一点很好......
答案 11 :(得分:1)
我们遇到的一个重大问题是多会话功能,这与我见过的GUI技术几乎不存在。我们的用户很快指出,使用当前基于字符的界面,他们可以在PC屏幕上同时进行十几个基于Telnet的终端会话,从而使他们能够高效地执行多任务或任务切换。他们将多任务处理视为杀手级功能,他们在我们快节奏的环境中受益,这种环境经常发生中断。能够同时访问特定ERP应用程序的多个实例或多个不同的ERP应用程序,同时始终保留会话状态对我们的用户社区非常重要。
答案 12 :(得分:1)
我认为问题来自GUI表单中的设计实践。我们倾向于在它们上放置更多对象,尤其是使用垂直滚动条和制表符功能。这也使得加载速度变慢。一旦记住了这些序列并且不需要按住Ctrl键,使用键盘输入CHUI菜单会更快。 Windows中的菜单栏有一些内容,其中快捷键说明在右侧。一段时间后,基于字符的菜单似乎更容易记住。
A) - This Menu
B) - That Menu
C) - Some other Menu
或者你可以通过选择箭头,你似乎有一些肌肉记忆,其中菜单是第二选择。
答案 13 :(得分:0)
只要您提供一些数据,某人就会想要查询它。你可以将它与gui集成,没问题。如果您认为您的某些客户想要编写某些任务的脚本。设置它。与自动化有关的任何事情都可以通过命令行完成(y harlo thar cron job!)
我喜欢guis。我是一个mac用户。但是有一个时间和地点的CLI。
答案 14 :(得分:0)
当注册系统从使用telnet的基于字符的系统转到PeopleSoft应用程序上的gui系统时,我是大学数学系的系统管理员。
前厅的gal破坏了新系统。现在,部分原因是关于旧鞋子更舒适。但是,当我问到这个问题时,克里斯汀说,即使在每天进行数百次注册一周之后,新系统仍然花了数倍的时间才能完成任何事情。很多事情只能用鼠标来完成。旧的系统可以尽快输入输入。屏幕重新粉刷时间不到十分之一秒。新系统有3/4到2秒的停顿时间-足够长的时间足以令人烦恼,而没有足够的时间来执行其他任何操作。