一个如何解耦的案例讲解

做具体的业务软件,做泛泛的技术平台,做某个面上的业务平软件,我相信在都有针对各自的项目特性有不同的要求,在这里我分享一下在由具体的业务软件项目向这个面上的一个业务平台的一个转化上有个需要注意的点就是业务扩展性要更好更优,业务代码最好不要浸入平台代码中去,如何有个统筹分类很重要,比如说增删改查,可以分为四种操作,至于用什么手段来解耦,在这里我用的是spring-xml配置文件,在这里贴上伪代码:

 

 

interface BizProcessor{

       //具体业务操作接口
       public void process(BizBO bizBO);

}

 

 

 

public class DeleteProcessor implementes BizProcessor{

public void process(BizBO bizBO){
//具体的业务操作,这里是删除

}

}

 

 

Public InsertProcessor implements BizProcessor{
   public void process(){
       //具体的业务操作,新增操作
    }

}

 

    处理器工厂,提供每个具体的业务操作实例

 

Public class BizProcessorFactory{
     private Map<Integer, BizProcessor> busOperatesMap;

    private ExecutorService pool = Executors.newFixedThreadPool(3);     

     public void doProcess(){

             pool .execute(new BizThread (BizBO));

     }


     //如果平台代码要求快速响应,可以通过线程池异步操作
     class BizThread extends  Thread{
 
           public void run(){
                   BizProcessor processor = busOperatesMap.get(BizType);
                   processor .process();
            }

     }


}
 

   以上伪代码展示了一个基本的解耦过程,只要在平台代码中调用工厂类的doProcess()方法就可以了,可以将具体的操作    转移到具体的业务代码模块中,还是达到了一个解耦的目的。

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值