c编写图形用户界面_通过询问“还有谁在房间里”来编写更好的用户界面。

2024-02-17 15:50

本文主要是介绍c编写图形用户界面_通过询问“还有谁在房间里”来编写更好的用户界面。,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

c编写图形用户界面

Girl touching a mirror

Photo: credit: Beverley Goodwin

照片:信用:贝弗利·古德温

There exists a debate within the User Experience community about whether a user interface should say ‘Your account‘ or ‘My account‘ to refer to the user's account. Should the call to action be ‘Create your account‘ or Create my account?

用户体验社区内部存在着有关用户界面应说“ 您的帐户 ”还是“ 我的帐户 ”来指代用户帐户的争论。 号召性用语应该是“ 创建您的帐户 ”还是“ 创建我的帐户”

Pinterest and Trello are both social web apps that use "boards", yet see how they differ!

Pinterest和Trello都是使用“面板”的社交网络应用程序,但请看它们之间的不同!

  • Pinterest: YOUR Board button

    Pinterest: 您的董事会按钮

  • Trello: MY Boards button

    Trello:“ 我的棋盘”按钮

When it comes time to delete your account, however, they both switch terms:

但是,到了删除帐户的时候,它们都会切换条款:

Pinterest: Deactivate my account

Pinterest: Deactivate MY account

Pinterest:停用我的帐户

Trello: Permanently delete your entire account forever?

Trello: Permanently delete YOUR entire account forever?

Trello:永久永久删除您的整个帐户吗?

Interestingly, they agree on prompts:

有趣的是,他们同意以下提示:

  • Pinterest: What’s YOUR board about?

    Pinterest: 您的董事会是做什么的?

  • Trello: What are YOU planning?

    特雷洛: 您在计划什么?

So how are you to decide? One trick is to consider who is in the room and who is talking.

那么,您如何决定? 一种技巧是考虑谁在房间里,谁在说话。

除用户外,房间里没人 (There's No One in the Room Except the User)

If there's no one else in the room, skip the qualifier entirely. There's no ambiguity. That is, if your user has no reason to acknowledge your brand or anyone else, imagine they're in an empty room. If there's a wrapped present on the table in this empty room, they know it's for them without needing a gift tag and their name on it.

如果房间里没有其他人,则完全跳过该限定词。 没有歧义。 也就是说,如果您的用户没有理由认可您的品牌或其他任何人,请想象他们在空荡荡的房间里。 如果在这个空房间的桌子上有包装好的礼物,他们会知道这是给他们的礼物,而无需礼物标签和名字。

When you avoid the qualifier, you gain the benefit of front-loading interface copy with distinguishing words instead of "your" or "my". For example, "Privacy settings" stands out from "Account" better than "My privacy settings" from "My account". This makes your user interface easier to scan. It also reduces the time it takes a user to understand what they're seeing and take their next action (perhaps, buying your product).

当您避免使用限定词时,您将获得带有区别词而不是“您的”或“我的”的前端加载界面副本。 例如,“隐私设置”在“帐户”中比在“我的帐户”中的“我的隐私设置”更好。 这使您的用户界面更易于扫描。 它还可以减少用户了解他们所看到的内容并采取下一步行动(例如购买产品)所花费的时间。

两家公司-网站和用户 (Two's Company — the website and the user)

Only use "your" or "my" when you need to differentiate between the user and the website speaking:

仅在需要区分用户和网站所用语言时,才使用“您的”或“我的”:

  • When the website is talking, use "Your".

    网站在讲话时,请使用“您的”。
  • When the user is talking, use "My".

    用户讲话时,请使用“我的”。

In the first instance, the website may "speak" to:

首先,该网站可能会“说”以下内容:

  • Orient the user through page headings and labels

    通过页面标题和标签定向用户
  • Provide content

    提供内容
  • Tell the user about their content

    告诉用户他们的内容
  • Tell the user there's been an error and how that affects them

    告诉用户有错误及其对他们的影响
  • Provide help and instructions

    提供帮助和说明
  • Offer documentation

    报价文件

(This is often expressed through some kind of label — a page label, form label, button label — so for simplicity we'll refer to this type of dialog as a label.)

(这通常通过某种标签来表示-页面标签,表单标签,按钮标签-因此,为简单起见,我们将这种类型的对话框称为标签。)

In the second instance, the user "speaks" when they perform actions. That is, the user lets the website know what they want by:

在第二种情况下,用户在执行操作时会“讲话”。 也就是说,用户通过以下方式让网站知道他们想要什么:

  • Pressing buttons

    按下按钮
  • Clicking menu items

    单击菜单项
  • Entering data

    输入数据
  • Selecting filters

    选择过滤器
  • Otherwise making some choice and commanding the website

    否则请做出选择并指挥网站

(For simplicity, we'll focus on buttons.)

(为简单起见,我们将重点放在按钮上。)

As such, "My" is appropriate in actions.

因此,“我的”适用于行动

Using "Your" or "My" when there are multiple voices removes the ambiguity about who is talking and who they are addressing, however, you still don't need to use both at all times. Assume one person is always talking, then add the qualifying "your" or "my" for exceptions when you need to differentiate between the website and user.

当有多个声音时使用“您的”或“我的”消除了关于谁在讲话以及他们正在向谁讲话的歧义,但是,您仍然不需要始终使用两者。 假设一个人一直在讲话,然后在需要区分网站和用户时,添加合格的“您的”或“我的”作为例外。

If the default is that the user is talking, you need to specify when the website is interjecting:

如果默认值是用户在讲话,则需要指定网站何时插入:

  • Website: “Would you like free gift wrapping with your purchase?” (label)

    网站:“您购买商品时需要免费礼品包装吗?” (标签)
  • User: “Add gift wrapping” (button) — not “wrap my gift”

    用户:“添加礼物包装纸”(按钮)—不是“包裹我的礼物”
  • Website: “Your Clients:” (label)

    网站:“您的客户:”(标签)
  • User: “Contact Clients” (button) — not “Contact My Clients”

    用户:“联系客户”(按钮)—不是“联系我的客户”

If the default is that the website is talking, you need to specify when the user speaks up:

如果默认设置为网站正在通话,则需要指定用户说话的时间:

  • Website: “Gift wrapping:” (label) — not “Wrap your gift:”

    网站:“礼品包装:”(标签),而不是“包装礼物:”
  • User: “Wrap my gift” (button)

    用户:“包裹我的礼物”(按钮)
  • Website: “Clients:” (label) — not “Your Clients:”

    网站:“客户:”(标签)—不是“您的客户:”
  • User: “Contact My Clients” (button)

    用户:“联系我的客户”(按钮)

Whether you emphasize the website's voice or the user's voice may depend on your product or service. A chatty, engaging brand will use "your" extensively. Alternatively, in personal, individual environments, a brand may wish to hide their presence. For example, consider these buttons:

您是否强调网站的声音还是用户的声音取决于您的产品或服务。 一个健谈,引人入胜的品牌将广泛使用“您的”。 或者,在个人,个人环境中,品牌可能希望隐藏其存在。 例如,考虑以下按钮:

  • "Check My Bank Balance"

    “检查我的银行余额”
  • "Update My Medical Records"

    “更新我的病历”
  • "Create My Account"

    “创建我的账户”

Don't draw attention to other people in the room by saying "Let's review your medical records." It's awkward.

不要说“让我们检查您的病历”来引起房间里其他人的注意。 好尴尬

If you decide to emphasize both voices to highlight the interaction and create a social experience, there's one particular complication I want to highlight: combining labels and buttons, which mixes voices. Let's look at 2 examples.

如果您决定同时强调两种声音以突出交互作用并创建社交体验,那么我要强调的一个特殊复杂之处是:组合标签和按钮,混合声音。 让我们看两个例子。

Firstly, navigation links are sometimes treated as buttons that indicate the user's intent, for example, clicking "My Stuff" in the main navigation menu to "Go to My Stuff". The following page is then labeled "Your Stuff". While on this page, you can see the "My Stuff" nav button and "Your Stuff" page label. Together, this appears inconsistent:

首先,有时将导航链接视为指示用户意图的按钮,例如,在主导航菜单中单击“我的资料”以“转到我的资料”。 接下来的页面被标记为“您的资料”。 在此页面上,您可以看到“我的资料”导航按钮和“您的资料”页面标签。 在一起,这似乎不一致:

WordPress's MY Site button comes with a tooltip that offers to View a list of YOUR sites

Instead of providing a button labeled "My Site", WordPress could say "Your Sites" or label it with the name of the site in question (which is the page label for the subsequent page when you click that button).

WordPress可以不提供“我的网站”按钮,而可以说“您的网站”或使用相关网站的名称(当您单击该按钮时是下一页的页面标签)标记它。

Treating navigation links as a label to show the user where they are and as an button when a user clicks it to navigate combines the website's voice and the user's voice into one button.

将导航链接视为标签来向用户显示其所在位置,并在用户单击导航链接时将其视为按钮,从而将网站的语音和用户语音合并为一个按钮。

Secondly, social media buttons such as "Follow me on Twitter" typically express the user's intent to perform an action despite speaking in the website's voice. This wording, however, makes more sense than the user clicking on "I want to follow you on Twitter" or "Follow them on Twitter". The convention used in "Follow me on Twitter" is akin to the website asking, "Would you like to follow me on Twitter?" and the user answering, "Yes", where the question and answer are condensed into one button.

其次,社交媒体按钮(例如“在Twitter上关注我”)通常会表达用户执行操作的意图,尽管会以网站的声音讲话。 但是,这种措辞比用户单击“我想在Twitter上关注您”或“在Twitter上关注他们”更有意义。 “在Twitter上关注我”中使用的约定类似于网站上的询问:“您要在Twitter上关注我吗?” 用户回答“是”,将问题和答案压缩为一个按钮。

To handle these cases, write the button's text using the website's voice. This avoids apparent inconsistency between page and navigation labels, as well as conforming to convention for social media buttons. Alternatively, separate the label and action out from the one button.

要处理这些情况,请使用网站的语音输入按钮的文字。 这样可以避免页面和导航标签之间明显的不一致,并避免社交媒体按钮的约定。 或者,从一个按钮中分离标签并采取措施。

Meanwhile, you only need to differentiate voices when the website may validly be speaking. There's no need to offer the user a button to "Update My Membership" when the website won't have its own "membership". Similarly, showing "Your Cart:" is often unnecessary because the website doesn't have its own cart, and the user doesn't know what's in other users' carts. "Cart" would do just fine.

同时,您只需要在网站可能有效地讲话时区分声音即可。 当网站没有自己的“会员资格”时,无需为用户提供“更新我的会员资格”的按钮。 同样,通常不需要显示“您的购物车:”,因为网站没有自己的购物车,用户也不知道其他用户的购物车中有什么。 “购物车”就可以了。

三人成群-许多用户 (Three's a Crowd — Many Users)

When your user engages with other users through your website, stick to the guidelines above — "your" for labels, "my" for buttons — and extend the concept to express other users' voices.

当您的用户通过您的网站与其他用户互动时,请遵循上述准则-“您的标签”,“我的按钮”-并扩展概念以表达其他用户的声音。

  • Labels: "Your Photos:" and "Your friend's photos:"

    标签:“您的照片:”和“您朋友的照片:”
  • Buttons: "Tag Photos" (lets you tag any photos; note how it's intentionally ambiguous), "Tag My Photos", and "Tag My Friends' Photos"

    按钮:“标记照片”(让您标记任何照片;请注意其有意含糊),“标记我的照片”和“标记我的朋友的照片”

Imagine you are an administrator of a business system. You're responsible for: system functionality, moderators or staff that use the system, end users of the system, and how you use the system. You might see:

假设您是业务系统的管理员。 你负责:系统功能,使用该系统的版主或工作人员,该系统的最终用户,以及如何使用该系统。 您可能会看到:

  • "System Settings:"

    “系统设置:”
  • "Staff Settings:"

    “人员设置:”
  • "User Settings:"

    “用户设置:”
  • "Your Settings:"

    “您的设置:”

In "Staff Settings:", you might see an "Update Staff Settings" button. In "Your Settings:", you might see "Update My Settings".

在“人员设置:”中,您可能会看到“更新人员设置”按钮。 在“您的设置:”中,您可能会看到“更新我的设置”。

After a point though, if your users have control over other people's things, you will need to start using names. If you have a shared account, for example, "my" could refer to anyone in the account:

不过,如果过了一点,如果您的用户可以控制其他人的事物,则需要开始使用名称。 例如,如果您有一个共享帐户,则“我”可以指代该帐户中的任何人:

Bill Scott, the lead UI Engineer at Netflix (and a renowned patternista himself) tells me that at Netflix they avoid “Your,” preferring “Bill’s recommendations.” Their rationale is that it communicates the personalization (the same way “your” and “my” are supposed to), and it also clarifies that “it is you and not your kid (when using multiple profiles in a household).” But then again, for most people Netflix may be more of a personal utility than a social environment. — Designing Social Interfaces: Your vs. My

Netflix的首席UI工程师比尔·斯科特(Bill Scott)(他自己也是著名的patternista)告诉我,在Netflix,他们避免使用“您的”,而更喜欢“比尔的建议”。 他们的理由是,它传达了个性化信息(应该以“您的”和“我的”相同的方式)进行交流,并且还阐明了“(不是您的孩子,而是您(当在家庭中使用多个配置文件时))”。 但是话又说回来,对于大多数人而言,Netflix可能更多是个人用途,而不是社交环境。 — 设计社交界面:您与我

Similarly, a gift card could be "your gift card" because you bought it to give to someone, or "your gift card" because it was given to you to spend. Using names removes ambiguity.

类似地,礼品卡可能是“您的礼品卡”,因为您购买了它是为了赠予某人,或者是“您的礼品卡”,因为它是提供给您进行花钱的。 使用名称可以消除歧义。

As one of many system administrators, you might be able to see "Sheldon's Settings" and hit the "Update Sheldon's Settings" button.

作为许多系统管理员之一,您也许可以看到“ Sheldon的设置”,然后单击“更新Sheldon的设置”按钮。

结论 (Conclusion)

In summary, if you don't absolutely need to use "your account" or "my account", don’t use either, use: "account". If you must use "your" or "my" to indicate who is talking, use "your" for labels, and use "my" for buttons sparingly. If the interface is private or personal, use "my" for buttons, and use "your" for labels sparingly. If there are many users, address people by name.

总而言之,如果您绝对不需要使用“您的帐户”或“我的帐户”,则不要使用两者,请使用:“帐户”。 如果必须使用“您的”或“我的”来表示正在讲话,请使用“您的”作为标签,并使用“我的”作为按钮。 如果界面是私人的或个人的,请在按钮上使用“我的”,并在标签上使用“您的”。 如果有很多用户,请按名称给人寻址。

And if all else fails, be consistent!

如果其他所有方法都失败,请保持一致!

翻译自: https://www.sitepoint.com/better-user-interfaces-copy/

c编写图形用户界面

这篇关于c编写图形用户界面_通过询问“还有谁在房间里”来编写更好的用户界面。的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/718263

相关文章

无人叉车3d激光slam多房间建图定位异常处理方案-墙体画线地图切分方案

墙体画线地图切分方案 针对问题:墙体两侧特征混淆误匹配,导致建图和定位偏差,表现为过门跳变、外月台走歪等 ·解决思路:预期的根治方案IGICP需要较长时间完成上线,先使用切分地图的工程化方案,即墙体两侧切分为不同地图,在某一侧只使用该侧地图进行定位 方案思路 切分原理:切分地图基于关键帧位置,而非点云。 理论基础:光照是直线的,一帧点云必定只能照射到墙的一侧,无法同时照到两侧实践考虑:关

Java 创建图形用户界面(GUI)入门指南(Swing库 JFrame 类)概述

概述 基本概念 Java Swing 的架构 Java Swing 是一个为 Java 设计的 GUI 工具包,是 JAVA 基础类的一部分,基于 Java AWT 构建,提供了一系列轻量级、可定制的图形用户界面(GUI)组件。 与 AWT 相比,Swing 提供了许多比 AWT 更好的屏幕显示元素,更加灵活和可定制,具有更好的跨平台性能。 组件和容器 Java Swing 提供了许多

如何编写Linux PCIe设备驱动器 之二

如何编写Linux PCIe设备驱动器 之二 功能(capability)集功能(capability)APIs通过pci_bus_read_config完成功能存取功能APIs参数pos常量值PCI功能结构 PCI功能IDMSI功能电源功率管理功能 功能(capability)集 功能(capability)APIs int pcie_capability_read_wo

Wondows dos下怎么编写bat批处理文件

最近搞php,在运行时,以Nginx+php-cgi.exe方式运行Wordpress项目 打开dos,先cd到php-cgi.exe文件当前目录下执行启动命令:php-cgi.exe -b 127.0.0.1:9001再打开一个dos,再cd到nginx.exe文件当前目录下执行启动命令:start nginx 大概过程要经过这些步骤,觉得很麻烦,就学下怎么编写一个bat文件,以双击运行代替

用Python编写倒计时程序:详细教程

目录 引言 环境准备 基本概念 代码实现 步骤一:导入必要的库 步骤二:获取用户输入 步骤三:实现倒计时逻辑 步骤四:整合代码 运行程序 高级功能 扩展功能示例:支持分钟和小时输入 扩展功能示例:图形用户界面 (GUI) 总结 引言 倒计时程序是一个非常常见的小工具,广泛用于各种应用场景中,例如考试时间提醒、烹饪计时器、会议倒计时等。Python 作为一种

html记账本改写:数据重新布局,更好用了,没有localStorage保存版本

<!DOCTYPE html><html lang="zh-CN"><head><meta charset="UTF-8"><title>htm记账本</title><style>table {user-select: none;/* width: 100%; */border-collapse: collapse;}table,th,td {border: 1px solid bla

【Spring boot】编写代码及测试用例入门之 Hello Spring boot _踩坑记

先贴下目录: 这是我从 start.spring.io 里下载的依赖Web的模板 // DemoApplication.javapackage com.abloume.springboot.blog.demo;import org.springframework.boot.SpringApplication;import org.springframework.boot.autocon

windows下使用vscode编写运行以及调试C/C++

vscode支持类似于vs的断点调试c/c++,也可以直接编译&运行c/c++ 先是编译运行 c/c++的方法                              微软官方起初设定的科学做法(这也是现在的科学做法)是通过在vscode集成控制台写命令行的方式来实现编译运行程序的,但也可以通过code runner插件来简化步骤,实现一键编译执行 但无论是什么方法,因为vscod

Python编写简单登录系统的完整指南

在现代应用中,用户认证和登录系统是一个非常重要的功能。通过登录系统,应用能够识别用户的身份,并为其提供相应的权限和服务。本文将介绍如何使用Python编写一个简单的登录系统,包括用户注册、登录验证、密码加密等功能。通过这一教程,将学习如何构建一个基本的用户登录系统,并理解其中的关键技术。 这里插播一条粉丝福利,如果你在学习Python或者有计划学习Python,想在未来人工智能领域吃上一口饭的,

springboot项目编写发送异常日志到企微工具包

1.创建基础Bean public final class ThreadFactory implements java.util.concurrent.ThreadFactory {private static final AtomicInteger poolNumber = new AtomicInteger(1);private final ThreadGroup group;priva