是使用多套代码还是使用一套代码---架构
现在公司做的是监督系统,使用的客户比较多,但是各个客户给出需求不可能都是一样的。
现在公司是这样做的:
假设石家庄A公司和保定市B公司要用我们的系统,公司都是用一套代码的,然后在代码里面做了逻辑判断,如:
if(秦皇岛){
//////
}else if(石家庄){
///////
}
这样的话,一套代码就可以同时适应A公司和B公司了,但是这样,由于客户越来越多,导致代码中出现了很多的if
else 判断,维护起来十分的麻烦的。
个人想到的解决思路:
1、使用多套代码
找出各个客户需求中的公共模块,把所有的通用模块(如分页、工作流)抽象出来,假设最后抽象出了五个通用模块,
如果石家庄用户要用我们的系统,同时提出了个性化需求,则我们可以以五个通用模块为基础,然后加上
个性化实现,最后组成一套代码。
但是这样的话,如果客户越多,而且需求都不太相同,那么如果有100个客户,则就有100套代码。
2、一套代码
可以针对石家庄写出对应的实现类,针对秦皇岛也是写出一套实现类,然后用接口管理起来。
想要实现的效果是这样的:
在配置文件中输入石家庄,然后系统启动的时候,就会自动的去加载对应的石家庄实现类。
这样的话就是一套代码了。不过这个估计实现起来有些难度。
想问的问题:
各个客户都要用监督系统,虽然监督系统的大致业务流程差不多,但是不同客户提出的需求还是不一样的。
那么在这种情况下是使用多套代码呢?还是使用一套代码?如果是多套代码的话,我上面的提的那种方式是否
可行,有更好的吗?如果是一套呢?又该如何处理好?
一套代码则维护起来不太容易。而多套代码则如果客户多的话,则会有很多的套代码。
请教一下,大家是如何处理这个问题的呢?