是否可以设计一个纯粹的管理类(不是要实例化),并使用所有静态方法?

jlm*_*kes 1 php static class

在容器对象中,我创建了一个类Factory,它负责组装2种不同类型的数组:一个包含多个foo对象,另一个包含多个bar对象.

我打算把它们称为:

$this->foos = Factory::assemble_foos().

$this->bars = Factory::assemble_bars().

Factory会也理论上被称为更新/删除显式声明的对象/属性,因为这样的:

例如. Factory::destroy_bar( $bar_id )

例如. Factory::update_foo( $foo_id, $attr, $val )

但我对OOP和PHP相当新,并对我的方法感到好奇 - 我意识到这个Factory类纯粹是管理的,而且它从来没有打算实例化(或者至少从未实例化多次).

对于这种方法,有一个专门的静态方法,也许是一些静态属性,是否存在"不良实践"?我应该重新处理我的代码,以便我的容器对象实例化一个Factory,并使我的方法实例方法?

谢谢

ale*_*lex 7

这是PHP中的常见做法,它允许您使用虚拟命名空间函数.

您可能想要做的一件事是__construct()私有化,因此无法实例化.