真的很长的类/变量/属性/方法名称

时间:2008-10-17 13:33:19

标签: naming-conventions naming variable-names class-names

我的一些朋友和同事有一些竞争对手可以找到或写出最长的类/变量/属性/方法名称。请记住,我们努力成为优秀的男孩和女孩,并保持命名的理解和简洁,同时仍然通过其名称解释事情的作用。

有时它不会发生。你参加过这个吗?我只想看看那里有什么。 (也许我的朋友和我并不像我们想的那么疯狂)

注意:我不是在寻找糟糕命名。那已经here了。我正在寻找有点长的命名。

13 个答案:

答案 0 :(得分:16)

这不是一个类名,而是一个枚举,但它要长得多:

VirtualMachineDeviceRuntimeInfoVirtualEthernetCardRuntimeStateVmDirectPathGen2InactiveReasonOther
来自VMware vSphere API的

。谷歌为它,你会找到在线文档。

答案 1 :(得分:12)

它不是很长,但我最喜欢的变量名是指示用户选择接收电子邮件。

  

User.IsSpammable

答案 2 :(得分:8)

我觉得有很长的测试名称可以描述测试。例如:

testMapWithOneEntryAllowsDifferentEntryPreservingFirst
testMapWithOneEntryAllowsDuplicateEntryOverwritingFirst

(这些只是我头脑中的例子......但你明白了。)

答案 3 :(得分:7)

org.aspectj.weaver.patterns;

public class HasThisTypePatternTriedToSneakInSomeGenericOrParameterizedTypePatternMatchingStuffAnywhereVisitor {
    boolean ohYesItHas = false;

    public boolean wellHasItThen/*?*/() {
        return ohYesItHas;
    }

    ... more methods...
}

答案 4 :(得分:4)

前几天,我遇到了Hibernate的问题。 我在名为findIntendedAliasedFromElementBasedOnCrazyJPARequirements的方法中得到了NullPointerException!

答案 5 :(得分:3)

protected virtual OcrBarcodeSymbologies GetSupportedBarcodeSymbologies() { }

答案 6 :(得分:2)

优秀的GTK+库“受此影响”。它具有非常巧妙的命名函数,但由于主API是C,而GTK +非常面向对象,因此它必须在函数名中编码类名。类X的构造函数是X_new(),依此类推。这导致了诸如gtk_recent_chooser_widget_new_for_manager()之类的小事。

我确信那里还有更长的功能名称,这只是我很快找到的功能名称。 :)

答案 7 :(得分:2)

长变量名称不会打扰我,只要没有明显更简洁的名称并且命名是理智的。例如,在Kamaelia中,有一个名为this的类类型:

threadedadaptivecommscomponent

答案 8 :(得分:1)

查看Apple的文档。他们是国王。非常具有描述性,但有时长达数英里。来自NSString类的几个例子:

NSString.completePathInfoString:caseSensitive:matchesToArray:filterType
NSString.stringByAddingPercentEscapesUsingEncoding

我最喜欢的Microsoft世界:SetProcessWorkingSetSize

答案 9 :(得分:1)

在苹果邮件应用程序中:

_synchronouslyTellServicesToRegisterAndSync()

在我写的应用程序中:

User.CanViewRestrictedItems()

我是同事写的一个应用程序:

Profile.DisplayMyDraftOrPendingProfile()
Profile.DisplayMyApprovedProfile()

刚开始。

外键约束名称:

constraint ReportCompanyReportTemplateIDVersionID_ReportTemplateVersionReportTemplateIDVersionIDFk foreign key (ReportTemplateID, VersionID) references customer_ReportTemplateVersion (ReportTemplateID, VersionID)

答案 10 :(得分:1)

我见过的命名惯例,在流利成为流行之前的几年

public DataSet SelectAllUsersWhereDobIsGreaterThan1980AndIsMaleOrderByNameAndAge()

答案 11 :(得分:1)

bool instrumentAreaDockWidgetVisibilityFollowsChildPresence;

答案 12 :(得分:0)

获取将要检索的js项目以及页面是否应显示推荐。