Mac*_*iek 1 java design-patterns
假设我有一个简单的程序,它采用以下形式之一的参数输入
do1 inputLocation outputLocation do2 inputLocation
outputLocation
do3 [30或60或90] inputLocation
outputLocation do4 [PD或C] inputLocation
outputLocation do5 [GHI] inputLocation outputLocation
我还需要在程序中调用5个具有相同名称的函数.到目前为止,我想过这样做(在"半伪代码"中)
static void main(String[] args)
{
if (args.length == 3)
processTriple(args);
if (args.length == 4)
processQuadruple(args);
throw new UnsupportedOperationException("dasdhklasdha");
}
Run Code Online (Sandbox Code Playgroud)
过程函数看起来像这样
processDouble(String args[])
{
String operation = "args[0]";
Location input = getInput(args[1]);
Location output = getInput(args[2]);
if (operation.equals("do1"))
do1(input,output);
if (operation.equals("do2"))
do2(input,output);
... etc
}
Run Code Online (Sandbox Code Playgroud)
我这样做的方式似乎不太可扩展.如果一个函数的参数发生了变化,或者添加了新函数,那么这似乎很难维护.什么是"最好"的方式来做这样的事情