PHP单例类的最佳实践

我总是写最佳实践,但我也想了解为什么给定的东西是最佳实践。


我读过一篇文章(遗憾的是我不记得),单例类优先被实例化,而不是用静态函数创建并使用范围解析运算符(::)进行访问。因此,如果我有一个包含所有要验证的工具的类,简而言之:


class validate {

    private function __construct(){}

    public static function email($input){

        return true;

    }

}

我被告知这被认为是不好的做法(或者至少被警告过),因为有垃圾收集器和维护这样的东西。所以对“单体类作为静态方法”的批评是什么,我实例化一个类我100%肯定我只会实例化一次。对我来说,它似乎在做“双重工作”,因为它已经准备好了。我错过了什么?


对此事有何看法?当然这不是生死攸关的问题,但如果有选择的话,人们可能也会以正确的方式做事情:)


喵喔喔
浏览 325回答 3
3回答

守着一只汪

Singleton is considered "bad practice".Singleton决策图:
打开App,查看更多内容
随时随地看视频慕课网APP