go 如何去掉switch case或者if else

2020-05-15  本文已影响0人  码二哥

如何去掉switch case呢?
最后改成一行语句即可。

1、问题如下

image

很明显,是根据动作来触发不同的业务流程,
一个动作对应一个业务流程;

2、解决措施

2.1、创建一个全局的注册中心

创建一个map,
作为动作跟处理函数的存储中心; 如下

image
可以根据自己的实际情况来设计具体的key,value

2.2、创建业务函数

一个业务,对应一个新创建的文件;
每个文件里,需要init函数处理函数
这样,启动服务时,就会将处理函数,注册到map里

image

2.3、如何使用呢?

第一、在main函数里,导入init函数所在的包名


image

第二、就可以从map里获取处理函数了。

例如:

image

如果有新的业务的话,原代码流程不需要修改,只需要新增一个文件,
在文件里,添加init函数,业务处理函数; 重新启动服务即可

上一篇 下一篇

猜你喜欢

热点阅读