我要为我的客户创建一个应用程序。
他(我的客户)的多个客户机将登录到该应用程序并执行相同的操作。
因此,在这种观点下,我们有一个“通用应用”:只写一次,适合每个客户的需要。
但是,在编写第一行代码之前,我们当然有第一个例外:当客户机A执行操作A时,您必须执行与客户机B、C和D相同的操作,但是……
当然,我们可以等待更多这样的修改,首先想到的是“一劳永逸”。
没问题,不能预见一切,而且源代码是灵活的。
但是,我预见到我的源代码中包含了各种if语句:
if (client == "a")
{
SetEndDate(+1);
}
else if (client == "b")
{
SetEndDate(+10);
}
else //no enddate modification needed for other clients
if (client == "d" || client == "E" )
{
DoExtraCheck1();
}
else if (client = "b")
{
if ( DoExtraCheck1())
{
DoExtraCheck2();
}
}
else //no checking needed for other clients
我开始害怕了!
什么样的解决方案才是一个很好的、优雅的简化方案?
下一个要解决的问题当然是,如果用户界面在客户机之间也发生了变化,但这是针对第2个问题的:)