【问题标题】:Configuration class as VO配置类为 VO
【发布时间】:2026-02-10 23:05:01
【问题描述】:

调用值对象设计模式的配置类有意义吗?例如:我将创建一个存储数据库配置(db、用户名、密码、主机等)的 php 类。这个类只返回它的值并且它的值是不可变的(除非你用文本编辑器编辑文件:)。它是一个值对象吗?我已经阅读了有关 Value Object 的内容,我想了解它。 谢谢。

【问题讨论】:

    标签: php oop class design-patterns


    【解决方案1】:

    是的,确实如此。 (尽管值对象更适用于对象消息传递。)

    但重要的是要记住,这是为没有 PHP 功能的语言设计的设计模式之一。这是缺少哈希数组的一种解决方法。这就是您实际上应该在这里使用的。一个很好的老无聊数据数组。

    如果您确实需要使其不可变(我怀疑其中是否存在真正的意义),那么您可以稍后将其包装到 ArrayObject 中,只需取消 offsetSet 和 Unset 方法即可。

    【讨论】: