您的位置 首页 golang

实例浅谈利用Golang的Builder&Option设计模式来传递初始化参数

函数Option模式

  • 创建OptionRedis结构体,Id为必须要指定的尝试,Option为默认参数结构体
  • 创建更改默认参数函数ModOption,便于修改默认参数
  • 创建每个默认参数修改的函数SetAddr,SetDb,SetPass
  • 构建初始化函数NewOptionRedis,指定默认参数的默认值,遍历加载修改默认参数的函数,以接受调用者更改后的参数,返回OptionRedis结构体

创建型Builder模式

  • 创建BuilderRedis结构体
  • 初始化BuilderRedis结构体NewBuilderRedis
  • 分别创建修改默认参数的方法

main包调用

输出

总结

Option模式和Builder模式都能构建容易维护的默认参数代码,但是从代码结构上看,个人觉得Builder 更易懂,更清晰,调用时使用类似链式写法调用,并不符合之前在Python语言类的默认参数函数调用方法,而Option符合Python语言中默认参数函数的调用方法,但代码和Builder比较起来相对复杂。

文章来源:智云一二三科技

文章标题:实例浅谈利用Golang的Builder&Option设计模式来传递初始化参数

文章地址:https://www.zhihuclub.com/101917.shtml

关于作者: 智云科技

热门文章

网站地图