Golang设计模式之享元模式

Jackey Golang 1,065 次浏览 0 评论 , ,
创建文件ImageFlyWeight.go package FlyWeight import "fmt" type ImageFlyWeight struct { data string } // 初始化 func NewImageFlyWeight(filename string) *ImageFlyWeight { data := fmt.Sprintf("image ...

Golang设计模式之桥接模式

Jackey Golang 1,155 次浏览 0 评论 , ,
创建文件Message.go package bridge // SNS短信 // Email type AbstractMessage interface { SendMessage(text, to string) // 发送快,普通发送 } type MessageImlementer interface { Send(text, to string) //...

Golang设计模式之代理模式

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

Golang设计模式之原型模式

Jackey Golang 1,060 次浏览 0 评论 , ,
package main import "fmt" // 原型对象需要实现的接口 // copy 原有的对象 type Cloneable interface { Clone() Cloneable } // 原型的类 type PrototypeManager struct { prototypes map[string]Cloneable ...

Golang设计模式之单例

Jackey Golang 1,236 次浏览 0 评论 , ,
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 1,063 次浏览 0 评论 , ,
创建DAOFactory.go package AbstractFactory // mysql // sqlserver // oracle // 订单 // 订单报表 type OrderMainDAO interface { // 订单记录 SaveOrderMain() // 保存 //DeleteOrderMain() //SearchOrd...

Golang设计模式之工厂

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

Golang 接口与多态

Jackey Golang 1,838 次浏览 0 评论 , ,
package main import ( "fmt" ) type A interface { Get() } type B struct { } func (b *B) Get () { fmt.Println("b") } type C struct { } func (c *C) Get () { fmt.Println("c") } f...
Go