代码之家  ›  专栏  ›  技术社区  ›  arthurprs

其他语言上的ObjectPascal标识符命名样式

  •  2
  • arthurprs  · 技术社区  · 14 年前

    当你看变量声明时,你知道你在处理什么。。

    例外情况
    T t摩托车
    类中的字段 f 可视
    事件
    指针类型
    财产 得到 什么

    在C++ C++ java中使用这个标识符命名方式,或者其他语言代码,这是不是太糟糕了?

    2 回复  |  直到 14 年前
        1
  •  3
  •   Marco van de Voort    14 年前

    除了品味和文化问题(梅森已经指出)

    一项公约与某一种语言相联系可能有其原因,而其他语言也可能有其原因。

    不过,我只能很快想到几个例子:

    对于不需要在使用前定义指针类型的语言(如大多数非Borland pascal、C等),通常很少需要使用“P”类型。

    其他语言也可能有其他消除歧义的方法(比如在C中,类型通常是大写的,变量或字段获得小写标识符),并且不需要“T”(严格地说,Delphi至少对字段没有这样做,因为标识符在某种程度上依赖于上下文进行查找(比如为字段和类型分离名称空间),但是约定比该特性更古老)

    顺便说一句,您忘记了接口的“I”,枚举名的前缀是从基类型名派生的前缀(例如。

    TStringsDefined = set of (sdDelimiter, sdQuoteChar, sdNameValueSeparator,
    sdLineBreak, sdStrictDelimiter)
    

    )

    嗯,这是另一个特定于语言的位,因为对象Pascal总是将enum名称添加到全局空间(而不需要enumtype.enumname)。有了前缀,全球空间的污染就少了。

    那是我最讨厌的一个与德尔福顺便说一句,缺乏进口控制(模块2式进口合格,从xxx进口)。扩展Pascal也有一些这样的功能)

        2
  •  3
  •   Mason Wheeler    14 年前

    据我所知,T、E、F和P前缀只在Delphi编程中常用。它们是这里习语的标准部分,但在C或Java中它们看起来不合适。

    Get和Set在面向对象编程中是相当标准的。不确定On前缀,但我发现这在任何事件驱动框架中都很常见并不奇怪。