Go 编译和部署 Eli He 2018-02-07 Golang 1. Go 程序编译1.1 交叉编译 (Cross Compiler)在一个平台上,编译生成其他平台的可执行文件 1.2 Windows12345SET GOS=darwinSET GOS=linuxSET GOARCH=amd64go build main.go 阅读全文 go
Go 接口类型 Eli He 2018-02-03 Golang 1. 静态类型和动态类型 静态类型: static type,即变量声明的时候的类型。 动态类型: concrete type,具体类型,程序运行时系统才能看见的类型 1234var i interface{} // 静态类型为interfacei = 8 // 动态类型为inti = "abc" // 动态类型为string 阅读全文 go
Go GoConvey Eli He 2018-02-02 Golang 1. GoConvey简介 GoConvey是一款针对Go语言的测试辅助开发包,在兼容Go原生测试的基础上,又拓展出便利的语法和大量的内置判断条件,减轻开发人员负担。 提供实时监控代码编译测试的程序,配以舒服的Web解码,能够让一个开发人员从此不再排斥写单元测试 2. 安装1go get github.com/smartystreets/goconvey 阅读全文 go
Go 包安装问题 Eli He 2018-01-21 Golang 1. 使用gopm镜像安装123go get -v github.com/gpmgo/gopmgopm get -v golang.org/x/tools/cmd/goimports 阅读全文 go
Go 标准库unsafe Eli He 2018-01-16 Golang 1. unsafe包Go是强类型语言,不允许不同类型的指针互相转换。但它提供unsafe包作为中间媒介,快速实现类型转换,但该转换是不安全的。 1.1 Go指针和unsafe.Pointer的区别Go指针: 不能进行数学运算 不同类型的指针,不能相互转换 不同类型的指针不能使用 == 或 != 比较 不同类型的指针变量不能相互赋值 unsafe.Pointer: 12type ArbitraryType inttype Pointer *ArbitraryType 阅读全文 go
Go 单元测试 Eli He 2018-01-15 Golang 1. 基础测试1.1 最简单的测试1234567func Add(x, y int) int { return x + y}func Sub(x, y int) int { return x - y} 阅读全文 go
Go 正则表达式 Eli He 2018-01-12 Golang 1. 正则表达式12345678func main() { str := `171.43.145.13 - - [10/Mar/2020:10:19:06 +0800] "POST /api/user/detail HTTP/1.1" 200 252 "-" "LifePlanner/1.9.14 (com.njivtime.lifeplanner; build:1.9.14.9; iOS 13.3.1) Alamofire/4.8.2" "-" 0.009 0.009` re := regexp.MustCompile(`\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\s`) arr := re.FindAllString(str, -1) fmt.Println(arr)} 阅读全文 go