若有收获,请记得分享和转发哦
前言
日常工作中,我们用得最多的设计模式,就是策略模式、工厂模式和模板方法模式啦。最近刚好用这几种模式优化了代码,所以今天跟大家聊聊,我是怎么优化的,思路是怎么样的。希望本文对大家有帮助哈。
优化前伪代码的流程
策略模式是如何应用进去的
工厂设计模式是怎么使用的
模板方法模式又是怎么应用进去的。
唠叨几句
1. 优化前伪代码流程
大家先看下,优化前,原有代码的大概逻辑哈。代码如下:
class Parameter{
int pageSize;
int pageNo;
int reqNum;
//其他参数。
}
//逻辑处理,是否命中客群
boolean isMarketHit(Parameter dto){
//如果是企业客群类型
if(dto.type == 'enterprise'){
//开关关闭不请求
if(isEnterpriseSwitchClose){
return false;
}
//请求只有一条记录的话
if(dto.reqNum==1){
//调用大数据的点查接口
return singleRemoteEOIinvoke(dto);
//请求超过一条的话
}else if(dto.reqNum>1){
//调用大数据的批量接口
return batchRemoteEOIinvoke(dto);
}
//如果是市场营销类型
}else if(dto.type=='market_list'){
//开关关闭不请求
if(isMarketListSwitchClose){
return false;
}
//请求只有一条记录的话
if(dto.reqNum==1){
//调用营销的点查接口
return singleRemoteMarketinvoke(dto);
//请求超过一条的话
}else if(dto.reqNum>1){
//调用营销的批量接口
return batchRemoteMarketinvoke(dto);
}
}
}
这个代码可能存在哪些问题呢?