您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

在PHP项目中,存在哪些模式来存储,访问和组织帮助器对象?

在PHP项目中,存在哪些模式来存储,访问和组织帮助器对象?

我相信您应该问构造函数中该对象需要什么:new YourObject($dependencyA, $dependencyB);

您可以 手动$application = new Application(new MessageHandler())提供所需的对象(依赖项)。但是您也可以使用 DI框架 (维基百科页面提供了指向PHP DI框架的链接

重要的是,您仅传递您实际使用的内容调用操作),而不传递您仅传递给其他对象的内容,因为它们需要它们。

关于Flavius解决方案的更多想法。我不希望这个帖子成为反帖子,但我认为重要的是要弄清为什么依赖注入至少在我看来比全局变量更好。

即使这不是“真正的” Singleton实现,我仍然认为Flavius弄错了。全球状况不好。请注意,此类解决方案还使用难以测试的静态方法

我知道很多人会这样做,批准并使用它。但是阅读Misko Heverys的博客文章一位Google可测试性专家),重新阅读它并慢慢地消化他所说的内容确实改变了我对设计的看法。

如果您希望能够测试您的应用程序,则需要采用其他方法来设计应用程序。当您进行测试优先编程时,您将遇到如下困难:’接下来,我想在这代码中实现日志记录;让我们先编写一个记录基本消息的测试”,然后提出一个强制您编写和使用不可替代的全局记录器的测试。

我仍然在努力地博客获取所有信息,并且实施起来并不总是那么容易,而且我有很多问题。但是,在我掌握了Misko Hevery所说的话之后,我无法回到以前做过的事情(是的,全局状态和Singletons(大S)):-)

php 2022/1/1 18:15:31 有735人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶