我正在为PHP中的大型项目编写辅助类,我编写了一个名为Command
的类。它本质上是一个OOP包装器,以受控方式从PHP运行系统命令。它有像addOption()
这样的方法来添加-a类型选项和addArgument()
来添加其他参数。
我需要做很多scp的文件,所以我会经常使用Command类。对scp的调用非常具体,因为我每次都需要使用某些选项。
扩展此类并创建ScpCommand
类是否有意义?它似乎有一个“是一种”关系,但它实际上与每次具有特定选项的Command
类完全相同。我真的不认为我需要覆盖除构造函数之外的任何方法。我可能只会添加类变量。这真的只是一种便利。
这里最有意义的是什么?
答案 0 :(得分:2)
如果只是配置,为什么不考虑在为您做锅炉盘配置后返回Command的工厂?
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;
}