我想通过提供服务将数据操作代码与控制器分开。
我在问自己,做一些像Service::getInstance()->function()
(单例)或干脆Service::function()
(静态)这样的事情更好
通常,我会做一个单例服务,人们说它更可测试。
但就我而言,该服务将使用类似 Article::find($id)
.所以我的问题是:如果这个单例使用静态方法,是否有必要制作单例?我认为在这种情况下,可测试性不会改变任何事情。对吗?我想以正确的方式做到这一点,所以我需要你的帮助。
非常感谢:)
为什么不能使用对象的实例?通过这种方式,您可以注入所需的依赖项:
$articleObject = new Article($databaseForExample);
$article = $articleObject->find($id);