2008-11-18 72 views
2

我正在为PHP中的一个大型项目编写助手类,并且我写了一个名为Command的类。它本质上是一个OOP包装,可以通过受控方式从PHP运行系统命令。它有像addOption()这样的方法来添加-a类型选项和addArgument()来添加其他参数。我应该扩展这个类还是仅仅使用它?

我需要做很多scp'ing的文件,所以我会很多地使用Command类。对scp的调用非常具体,因为我需要每次都使用某些选项。

扩展此类并创建ScpCommand类是否有意义?它似乎有一种'是'的关系,但它与每次具有特定选项的Command类都是一样的。我真的不认为我需要重写除构造函数外的任何方法。我可能只会添加类变量。这真的只是一个方便。

这里最有意义的是什么?

回答

2

如果只是配置,为什么不考虑一个工厂在为您完成锅炉板配置后返回命令?

function getScpCommand($???) 
{ 
    $Command = new Command(); 
    $Command->addOption(/* scp specific this */); 
    $Command->addArgument(/* scp specific that */); 
    /* etc */ 
    $Command->addOption(/* handle your getScpCommand parameters here */) 

    return $Command; 
} 
+0

我同意我认为你可以很容易地使用工厂的一个很好的论点。不错的想法。 – 2008-11-18 17:48:15

相关问题