Tag: Golang

Golang设计模式之单例

Jackey Golang 1,792 次浏览 , ,
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,773 次浏览 , ,
新建 OperatorFactory.go package factory // 实际运行类的接口 type Operator interface { SetLeft(int) SetRight(int) Result() int } // 工厂接口 type OperatorFactory interface { Create() Opera...

Golang 接口与多态

Jackey Golang 2,386 次浏览 , ,
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...

IDEA 利用 go mod 管理 beego 项目

Jackey Golang 3,599 次浏览 ,
项目名称:test mkdir goproject cd goproject mkdir src mkdir test 进入IDEA, 打开到 test项目,然后配置IDEA的gopath和代理网址: 说明:配置gopath是为了找到bee命令,配置代理网址:https://goproxy.cn,是为...

Golang 利用redis加并发锁

Jackey Golang, Redis 4,038 次浏览 ,
package main import ( "fmt" "github.com/go-redis/redis" "time" ) // 定义redis链接池 var RedisTest *redis.Client // 初始化redis链接池 func init() { RedisTest = redis.NewClient(&redis.Options...

Golang 比较两个版本号

Jackey Golang 6,090 次浏览 ,
要求 比较两个版本号 version1 和 version2。 如果 version1 > version2 返回 1,如果 version1 < version2 返回 -1, 除此之外返回 0。 你可以假设版本字符串非空,并且只包含数字和 . 字符。 . 字符不代表小数点,而...

Golang 策略模式

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

go-redis模块对Redis进行批量操作

Jackey Golang, Redis 3,322 次浏览 ,
go-redis对redis执行批量操作的类是Pipeliner,具体示例如下. 运行该示例可在redis服务端依次接收到: MULTI incr tx_pipeline_counter expire tx_pipeline_counter 3600 EXEC 多条命令采用批量处理不止节省网络时...

Golang 栈

Jackey Golang 2,601 次浏览 ,
栈的介绍 栈的英文为stack 栈是一个先入后出(FILO-First In Last Out)的有序列表 栈是限制线性表中元素的插入和删除只能在线性表的同一端进行的一种特殊线性表。允许插入和删除的一端,为变化的一端,称为栈顶(Top),...
Go