go

golang设计模式之代理模式

代理模式 定义 定义:为其对象提供一种代理以控制这个对象的访问。通俗点讲就是它在不改变原始类(或叫被代理类)代码的情况下,通过引入代理类来给原始类附加功能。 来点通俗的理解: 比如我们买火车票...

golang设计模式之适配器模式

适配器模式 定义 适配器模式的英文翻译是Adapter Design Pattern。顾名思义,这个模式就是用来做适配的,它将不兼容的接口转换为可兼容的接口,让原本由于接口不兼容而不能一起工作的类可以一起工作。 举个...

golang设计模式之模板模式

模板模式 定义 模板模式(TemplateMethod):定义一个操作中的算法骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重新定义该算法的某些特定步骤。 模板方法模式就是提供一个代...

golang设计模式之命令模式

命令模式 定义 命令模式(Command):将一个请求封装成一个对象,从而是你可用不同的的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤销的操作。 优点 1、降低了系统耦合度; 2、新的命令...

golang设计模式之组合模式

组合模式 定义 组合模式(Composite),将对象组合成树形结构以表示'部分-整体'的层次关系。组合模式使得用户对单个对象和组合对象的使用具有一致性。 组合模式,将一组对象组织成树形结构,将单个对象和组合对...

golang设计模式之装饰模式

概念 “用于代替继承的技术,无需通过继承增加子类就能扩展对象的新功能” “动态地给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生成子类更为灵活” 何时用 需要扩展一个类的功能,或给一个类...

golang设计模式之观察者模式

观察者模式 定义 观察者模式(Observer Design Pattern)定义了一种一对多的依赖关系,让多个观察者对象同时监听一个主题对象。这个主题对象在状态发生变化的时,会通知所有的观察者对象,使他们能够更新自己。 ...

golang设计模式之策略模式

策略模式 定义 策略模式定义了算法家族,分别封装起来,让他们之间可以相互替换,此模式让算法的变化,不会影响到客户端的使用,也称为政策模式(Policy)。 策略模式主要的作用还是解耦策略的定义、创建和使...

Golang解析yaml文件

一.具体思路 将配置yaml文件内容解析为我们定义好的struct,这种比较简单,如果想获取对应的值,直接获取即可。 二.实现步骤 首先根据配置文件的内容定义一个结构体Config,结构体类型和yaml中的属性配置了...