尊重代码
包容性是 V8 文化的核心,我们的价值观包括以尊严对待彼此。因此,重要的是每个人都能在没有受到偏见和歧视的有害影响的情况下做出贡献。但是,我们代码库、UI 和文档中的术语可能会延续这种歧视。本文档制定了旨在解决代码和文档中不尊重术语的指南。
政策 #
应避免使用贬损、伤害或直接或间接地延续歧视的术语。
本政策的适用范围是什么? #
贡献者在参与 V8 项目时会阅读的任何内容,包括
- 变量、类型、函数、文件、构建规则、二进制文件、导出变量等的名称
- 测试数据
- 系统输出和显示
- 文档(源文件内部和外部)
- 提交信息
原则 #
- 尊重:贬损性语言不应是描述事物工作方式所必需的。
- 尊重文化敏感的语言:某些词语可能带有重要的历史或政治意义。请注意这一点并使用替代词。
如何知道特定术语是否可以接受? #
应用上述原则。如果您有任何疑问,可以联系 [email protected]
。
哪些术语是应该避免的示例? #
此列表并非详尽无遗。它包含一些人们经常遇到的示例。
术语 | 建议的替代方案 |
---|---|
master | primary, controller, leader, host |
slave | replica, subordinate, secondary, follower, device, peripheral |
whitelist | allowlist, exception list, inclusion list |
blacklist | denylist, blocklist, exclusion list |
insane | unexpected, catastrophic, incoherent |
sane | expected, appropriate, sensible, valid |
crazy | unexpected, catastrophic, incoherent |
redline | priority line, limit, soft limit |
如果我与违反此政策的内容进行交互怎么办? #
这种情况已经发生过几次,尤其是在实现规范的代码中。在这些情况下,与规范中的语言不同可能会影响理解实现的能力。对于这些情况,我们建议以下方法,按优先级递减排列
- 如果使用替代术语不会影响理解,请使用替代术语。
- 如果无法做到这一点,请不要将术语传播到执行交互的代码层之外。在必要时,在 API 边界使用替代术语。