实战讲解,原来是用 SpringBoot 实现策略模式可以这么简单

一、介绍

一说起策略设计模式,相比大家都不陌生,在实际的业务开发中,合理的使用设计模式来编程,可以让代码阅读起来层次感更强,同时扩展性也会得到提升!

最近看同事的代码时候,学到了一个小技巧,在某些场景下合理的使用策略模式还是非常有用的,在此分享一下给大家。

二、代码实践

在介绍 SpringBoot 中如何实现策略设计模式之前,我们先简单的回顾一下策略模式的设计思路。

以编写一个简单的程序计算器,代码如下!

  • 首先,我们定义一个Operation接口,用于逻辑的计算

public interface Operation {

    /**
     * 执行计算
     * @param a
     * @param b
     * @return
     */
    int execute(int a, int b);
}
  • 接着,分别将四个if判断逻辑独立成一个模块,来单独处理

public class AddOperation implements Operation {

    @Override
    public int execute(int a, int b) {
        return a + b;
    }
}
public class SubOperation implements Operation {

    @Override
    public int execute(int a, int b) {
        return a - b;
    }
}
public class MultiOperation implements Operation {

    @Override
    public int execute(int a, int b) {
        return a * b;
    }
}
public class DivOperation implements Operation {

    @Override
    public int execute(int a, int b) {
        return a / b;
    }
}
  • 然后,创建一个工厂类,用于处理客户端传入的参数

public class OperatorFactory {

    private static Map operationMap = new HashMap<>();

 

你可能感兴趣的:(java,spring,boot,开发语言)