0

我有一个存储一些临时数据的类。此类具有用于清除过期数据的“deleteOld”方法。

将参数传递给该函数以设置到期期限是个好主意吗?我的意思是类似的东西deleteOld(expiredDays)。或者这个函数应该封装expiredDays参数?

deleteOld()
{
  // get expiredDays from config
}

'expiredDays' 是在配置中设置的常量。

第一个变体看起来更灵活。但是第二个看起来更 OOP,因为类客户端不需要知道有关 expiredDays 的任何信息。第二种方式没有透露类实现的细节。

它是 PHP,但我想这没关系

你怎么看?谢谢。

4

1 回答 1

0

它总是取决于,主要取决于业务逻辑。如果一个值控制业务逻辑的某些方面,它可以作为参数给出。这就是参数的用途。

在您的情况下,我认为这expiredDays是管理存储数据的业务问题,因此揭示这一点是没有问题的。除了您的业务逻辑要求外部的任何人都不得更改它。正如我所说,这取决于。

您不会透露的可能是数据的存储方式(文件系统,数据库,...)。

于 2013-01-11T07:34:09.957 回答