SRP以牺牲效率为代价?或者使用不当?

时间:2014-01-31 12:48:39

标签: php oop dry single-responsibility-principle

如果我们有2个班级

class databaseGateway
class format

假设我们通过databaseGateway进行查询并获得5行。 我们想要应用格式并更新数据库中的行。

我们可以在1循环内完成所有这些工作

foreach($rows as $entry => $array) {
     $update['page'] = $format->html($array['page'];
     $update['id'] = $array['id'];
     $databaseGateway->update($update);
}

但这不是违反单一责任原则吗?根据这个原则,我们是否必须创建一个循环来格式化行,另一个循环来更新数据库?

foreach($rows as $entry => $array) {
    $rows[$entry] = $format->html($array['page']);
}


foreach($rows as $entry => $array) {
    $databaseGateway->update($array);
}

这似乎是浪费资源,但也是代码的重复?反对不要重复自己原则。

处理此问题的正确专业方法是什么?似乎非常普遍。

由于

0 个答案:

没有答案