“永远不要发明这样的名字;只使用它们作为记录。”谁?
Posted
技术标签:
【中文标题】“永远不要发明这样的名字;只使用它们作为记录。”谁?【英文标题】:"Never invent such names; only use them as documented." Who? 【发布时间】:2015-03-13 22:39:17 【问题描述】:我阅读PEP 8 是为了了解(想象的)我创建一个名称为__foo__
的对象是否是个好主意。 PEP 8 这么说 __double_leading_and_trailing_underscore__
:
永远不要发明这样的名字;仅按记录使用它们。
我的问题是:谁?
我是一名程序员。我为其他程序员编写了一个 API。 Python 是由程序员实现的。实现的语言参考是由程序员或至少是前程序员编写的,使用我的 API 的程序员将编写一些可能会或可能不会被其他程序员使用的东西。
现在事情展开了,当 PEP 8 说“永远不要发明这样的名字”时,他们指的是哪个程序员?
显然鼓励某人发明这样的名字,因为它们存在,而其他人则不请自来。
哪些程序员应该“永远不要发明这样的名字”?
【问题讨论】:
【参考方案1】:不鼓励您在 API 中使用此类名称,是的,因为如果Python 核心开发人员为 Python 本身选择相同的名称时,您将失败,您的 API 可能会损坏。
因此,如果您不是 Python 核心开发人员或编写的 PEP 可能有一天会成为 Python 标准库或核心语言定义的一部分,请尽量避免在您的 API 中使用笨拙的名称。
【讨论】:
以上是关于“永远不要发明这样的名字;只使用它们作为记录。”谁?的主要内容,如果未能解决你的问题,请参考以下文章