【问题标题】:Is there a dictionary about common programming vocabulary?有没有关于常用编程词汇的字典?
【发布时间】:2011-02-12 02:55:49
【问题描述】:

当我需要一个扩展现有类行为的新类的名称时,我通常很难为它想出一个名称。

例如,如果我有一个 MyClass 类,那么新类可以命名为 MyClassAdapter、MyClassCalculator、MyClassDispatcher、MyClassParser...

这个新名称当然应该代表类的行为,并且理想情况下与使用它的设计模式相同(适配器、装饰器、工厂...)。但由于我们不会过度使用设计模式,这并不总是解决方案:)

那么,您知道我们可以使用字典或常用词列表来表示类的行为,其中包含对预期行为的简短描述吗?一些例子:replicator、shadow、token、acceptor、worker、mapper、driver、bucket、socket、validator、wrapper、parser、verifier……

您还可以将此列表视为隐喻的备忘单,通过它您可以更好地了解您的问题领域。

【问题讨论】:

  • 韦氏词典非常好。试试那个。

标签: dictionary naming-conventions terminology vocabulary


【解决方案1】:

我建议不要在名称中使用设计模式。您从名称 MyClass 开始,并将其扩展到 MyClassAdapter、MyClassCalculator、MyClassDispatcher、MyClassParser 等。

但既然你知道这些是类,而且它们是你的,那为什么不使用 Adapter、Calculator、Dispatcher、Parser。

但是适配器是否普遍按照它所说的去做?计算器绝对计算任何东西,还是有特定的工作?

好的名称可能是 WindowToCommProtocol(命名它所适应的名称)、Payroll(计算只是一项任务)、UICentral(对我来说听起来像是一个调度程序)等。计算器和解析器通常不应在其工作完成后保留状态,所以对我来说,这些听起来更像是函数,而不是类。

【讨论】:

    【解决方案2】:

    我认为试图从一个类的名称中反映(或表示或建议或表示或暗示)一个类的行为是相当奇怪的。一个类的行为肯定是由它的方法定义的吗?

    我还认为 your 使用 my 字典需要您订阅我对世界的思考方式。即使我们在同一个问题域中工作(我敢打赌我们不是),我认为这对你来说并不容易。

    因此,我建议您按照自己的建议去做:从问题领域的术语中导出您自己的字典。该练习将帮助您了解该领域。

    最后,比起字典,你可能会更好地使用同义词库。

    【讨论】:

    • 嗯,有类(和方法)名称的常用习语,这通常是的事情(想想设计模式)新 API 的学习曲线。
    猜你喜欢
    • 1970-01-01
    • 2010-09-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多