对于抽象函数,是应该为抽象函数,实现函数还是两者定义phpdoc?

前端之家收集整理的这篇文章主要介绍了对于抽象函数,是应该为抽象函数,实现函数还是两者定义phpdoc?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
有没有正确或标准的方法来做到这一点?

例如:

AbstractFoo.PHP

abstract class AbstractFoo {
    /**
     * Does the PHPdoc go here?
     */
    public function fooFunction();
}

Foo.PHP

class Foo extends AbstractFoo {
    /**
     * Or does the PHPdoc go here?
     */
    public function fooFunction(){
        // some implementation
    }
}

请考虑以下问题:

>如果你将PHPdoc放在抽象的FooFunction()中,并且控制点击$foo-> FooFunction(),你将最终得到Foo类’FooFunction(),这是没有文档的,并且不会立即明显它正在实现一个抽象功能.如果很明显,没有简单的方法可以在抽象函数中找到PHPdoc

>确定对象是什么类
>找到它继承的抽象类
>对该抽象类中的函数名称执行“查找”

>如果您只将PHPdoc放在子函数中,那么您将面临在n个继承类的子函数中复制PHPdoc.
>如果你把PHPdoc放在两者中,抽象函数PHPdoc就变得没用了,除非子类没有PHPdoc,想要继承抽象的PHPdoc.但即便在这种情况下,也没有简单的方法可以导航到那个抽象的PHPdoc.

您应该记录接口或抽象实现. 否则,使用@ inheritdoc / document实现一个接口方法.

猜你在找的PHP相关文章