Tag: 设计模式

Golang设计模式之代理模式

Jackey Golang 1,801 次浏览 , ,
package main import "fmt" type Subject interface { Do() string // 实际业务, 业务系统,检查是否欠费,检查密码是否正确 } type RealSubject struct { } func (sb RealSubject) Do() string { return "智...

Golang设计模式之单例

Jackey Golang 2,038 次浏览 , ,
package main import ( "fmt" "sync" ) type Single struct { Data int } var singleton *Single var once sync.Once // 内核信号,时时刻刻只能运行一个 func GetInterface() *Single { once.Do(...

Golang设计模式之工厂

Jackey Golang 2,037 次浏览 , ,
新建 OperatorFactory.go package factory // 实际运行类的接口 type Operator interface { SetLeft(int) SetRight(int) Result() int } // 工厂接口 type OperatorFactory interface { Create() Opera...

Golang 策略模式

Jackey Golang 3,542 次浏览 ,
什么是策略模式? 不同的算法按照统一的标准封装,客户端根据不同的场景,决策使用何种算法。 优势 典型的高内聚:算法和算法之间完全独立、互不干扰 典型的松耦合:客户端依赖的是接口的抽象方法 沉淀:每一个封装好的...

Golang设计模式之单例

Jackey Golang 3,105 次浏览 , ,
懒汉模式 这种方式实现起来特别简单,直接判断一个实力是不是为nil, 如果是,则新生成;否则返回已有的。但它和多数语言一样,只适合用在单线程。 [codesyntax lang="c"] type SingleTon struct { } var instance *SingleTo...
Go