注释中注释方法的首选方式是什么?

有时在评论时必须引用另一种方法。 这里有一些PHP例子:

class A
{
    /**
     * @see B::bar
     */
    public function foo()
    {
        B::bar();
    }
}

class B
{
    public static function bar()
    {
        // ...
    }
}

那么,如果在B类中会有一个非静态的方法bar呢? 在评论中命名其他方法的最佳方式是什么?

编辑

PHP手册似乎使用mysqli->affected_rows以及PDO::beginTransaction 。 但它不包括方法名称后的括号。 什么是亲和骗局? 我的意思是很明显,一种方法后面跟着括号,所以为什么不出来呢?

Thx提前!


您可以使用->运算符来引用实例/对象方法而不是类方法。 PHP.net在他们的手册中也是这样做的(例如,请参阅MySQLi类)。


我会写:

class A {
    // see B::bar()
    public function foo() {
        B::bar();
    }
}

关于我的各种变化,我最强烈的意见是信箱评论是魔鬼的工作。 关于你的静态和非静态的东西,我知道并且使用B::bar()来引用函数定义以用于对话目的,无论bar()是否是静态的。

上面的例子当然只是为了说明的目的,因为如果实际上有一个函数A::foo()除了调用B::bar()什么也不做,我不会包含注释,因为如果读者我的代码是个白痴,我不想帮他。


在我看来,你的例子就足够了。 不过,您应该将B :: bar作为B :: bar()引用。

您可能需要考虑使用@uses php-doc标记,该标记会在为B :: bar()生成的文档中自动创建@usedby引用,并指向A类。

/**
 * @uses B::bar()
 */

就文档而言,静态方法与@uses,@usedby或@see无关,仅与@static无关。 @uses标记中的静态标记只是传达范围以查找bar()方法,而不是表示@static。

链接地址: http://www.djcxy.com/p/14937.html

上一篇: What is the preferred way of notating methods in comments?

下一篇: What is your personal approach/take on commenting?