方法是否应该为未捕获的异常提供PHPDoc?

时间:2016-08-10 20:41:24

标签: php phpdoc api-design

让我们在课堂上说,我有这些非常人为的方法:

/**
 * @param bool $flag
 * @throws \InvalidArgumentException _bubbled up_ if $flag is not bool
 */
public function fu($flag){
    $this->bar($flag);
}

/**
 * @param bool $flag
 * @throws \InvalidArgumentException if $flag is not bool
 */
private function bar($flag) {
    if (!is_bool($flag)){
        throw new \InvalidArgumentException('bool required');
    }
}

由于只有fu()是公开的,因此查看我的API的开发人员可能看不到bar()可能会引发异常。我认为将额外的@throws标记添加到fu()是一个好主意,这样开发人员就会知道他们可能希望在调用它时捕获异常。

这是个好主意还是不好?为什么呢?

0 个答案:

没有答案