2

我正在使用 PHP 中的类。当我写一个类时,我总是在想“这个对象基本上是一次性的;它不会持续超过页面加载。” 因此,我的类中的所有逻辑基本上都是自己构建的,做一些状态更改,给出一些反馈,然后死掉。盐水虾。

正因为如此,我已经开始使用异常来抛出几乎所有的问题,因为如果出现问题,我将无法让用户与对象进行交互。相反,用户会在页面上获得一些关于发生了什么的反馈,然后他们重新提交表单或其他任何内容。无论如何,该对象将在几毫秒内死亡,我将无法获得更多输入来处理该错误。

在我看来,如果我在具有持久性对象的环境中编程,我可能会在对象的方法因异常终止之前做出更强大的警告、错误报告和处理。如果一个对象仍然处于错误或警告状态,我可以从用户那里获得更多输入并继续。所以我的对象看起来和行为会有所不同。

请注意,我要问的不是“PHP 中的对象与其他语言的行为有何不同?” 而是“在 PHP(或其他非持久性环境)中编写对象时,这些对象与能够持久化的对象有何不同?”

4

1 回答 1

0

我怀疑一个关键方面与资源管理有关,文件句柄和内存显然是可疑的。(就 PHP 而言,我猜你会取消设置范围内但不再需要的大型数组和对象。)

也就是说,我认为一个好的程序员无论如何都会以这种方式编写代码——即使你知道运行时会为你处理这些事情,让文件句柄处于打开状态等都是相当糟糕的做法。

于 2010-08-12T14:13:00.033 回答