【发布时间】:2018-01-28 22:05:49
【问题描述】:
因此,如果我需要在应用程序内部传递数据,是否有很好的可预测方式来传递数据。
我希望能够查看一个函数并知道集合中传递给该函数的内容。
数组是一种不可预测的数据结构,所以你永远不知道你得到了什么。
我觉得用命名属性定义一个对象并将其传递给应用程序而不是数组会更好,因为这样就可以使用某种定义。
问题在于,在某个文件夹的某个地方只会有一堆对象堆积。
想知道任何人对此的看法,以及任何其他选择吗?
【问题讨论】:
-
“一堆对象堆积在某个文件夹的某个地方” - 您是否将它们存储为文件?你应该如何传递它们取决于你的应用程序,我们对此一无所知。一般来说,我更喜欢传递对象(称为值对象)而不是数组,因为您可以定义哪些属性应该可用。
-
这一定是我读过的最模糊的问题。请提供一些实际背景。
-
谢谢马格努斯。这正是我一直在寻找的。值对象。那么你把这些放在哪里呢?有关如何使用它们的最佳做法的任何建议?
-
“在哪里保存这些” - 这完全取决于您的应用程序结构。你可以把它们放在你想要的任何地方。关于“如何使用它们”,它们是对象,就这样使用它们......
-
@jonrsharpe 你是对的,它是模糊的。一个例子是,如果我有一个带有单个参数的函数,它是一个数组,该函数看起来像这样:public function ($some_array){}没有可预测的方法来知道该数组中的内容。但是如果 do:public function (CustomObject $some_object){}我可以查看该对象文件并知道传递给我的函数的内容。这就是 Magnus 调用的值对象。但是,我觉得文件夹中可能会堆积一堆值对象,因为每个不同的功能都可能需要一个新的值对象。
标签: php oop data-structures architecture system