服务重构理解接口编程的妙处

       由于面向过程式编程是大部分人一开始接触到的编程方式,所以服务往往采用满屏函数或者有甚者一函数搞定逻辑的代码经常出现。结果是:服务后期的维护和增删改查,都带来了不少难度,只能对着空气默念--搞死laozi了....

       之前接手一个胚胎初期的服务(还未发布),服务大体过程是:定时去执行任务,任务负责调用其他业务1,业务2,...,业务n接口拉取数据,然后对获取的数据进行处理,最后发送结果邮件。

       服务重构理解接口编程的妙处_第1张图片

        然后代码竟然也是上面的逻辑图一样,处理逻辑大框里面全都扔到一个函数里面。随着业务的增多,假定每个业务又有特殊逻辑,这函数注定只能是越来越大,主要是受面向过程式编程思维的影响。如果是从面向对象的角度出发,自然会去用接口去划分业务逻辑,然后借助设计模式,使得系统易扩展、易维护。

        服务重构理解接口编程的妙处_第2张图片

        刚好后面进行了几次服务的修改,增加调用业务接口,并且对该接口返回的数据进行处理,都能封装到该类中,逻辑清晰;还有就是对dealer的处理,改用其他接口,换异步都不成问题。有了系统图,实现起来就是敲代码写业务逻辑,别看下图类很多,里面代码都不足200行,不过度封装,easy好多。

        服务重构理解接口编程的妙处_第3张图片

       

 

 

 

  

你可能感兴趣的:(重构)