网站首页 返回列表 “慢生活”不是懒惰,放慢速度不是拖延时间,而是让我们在生活中寻找到平衡。
Go的web工作原理
在Go中使用及其简单的代码即可开启一个web服务。如下:__//开启web服务functest(){http.HandleFunc("/",sayHello)err:=http.ListenAndServe(":9090",nil)iferr!=nil{log.Fatal("ListenAndServer:",err)...
阅读全文
Go语言开发中空interface
做iOS开发的时候我们知道id指的是任意数据类型的对象,那么在Go语言开发有没有这样的数据类型,答案是肯定的,这种数据类型就是空interface,空interface(interface{})不包含任何的method,正因为如此,所有的类型都实现了空interface。空interface对于描述起不到任何的作用(因...
阅读全文
Go语言开发时间格式化
习惯了IOS时间格式化的方式,在go语言开发的时候,在Go语言开发的时候竟然为格式化时间还查了半天资料,看完资料之后,才知道原来go语言时间格式化真心简单生成时间戳__import"time"funcmain{t:=time.Now()fmt.Println("t:”,t.Unix())}t:1498017149生成毫...
阅读全文
Go语言开发通过经纬度计算两点之间的距离
在Go语言开发中,若知道经纬度,可以通过下面的公式计算两点之间的距离__funcmain(){lat1:=23.1378010917lng1:=113.4022203113lat2:=22.1191433172lng2:=113.5826193044fmt.Println(GetDistance(lat1,lat2,l...
阅读全文
Go 网络编程:解析请求数据
几个重要的变量`http.request`中涉及到数据解析的几个重要变量为:__//Formcontainstheparsedformdata,includingboththeURL//field'squeryparametersandthePOSTorPUTformdata.//Thisfieldisonlyavai...
阅读全文
Go语言开发中MongoDB数据库
伴随着移动端的兴起,Nosql数据库以其分布式设计和高性能等特点得到了广泛的应该用,下面将介绍下Nosql中的mongoDB在Go语言中的应用,在开发前,有必要了解下基础知识,[mongo数据库](https://link.jianshu.com?t=http%3A%2F%2Fwww.runoob.com%2Fmong...
阅读全文
Go 网络编程:使用 Handler 和 HandlerFunc
例子先看一个简单的例子:__packagemainimport("fmt""net/http")typeHelloHandlerstruct{}func(hHelloHandler)ServeHTTP(whttp.ResponseWriter,r*http.Request){fmt.Fprintf(w,"HelloHa...
阅读全文
go语言区块链开发之并发 https://blockchainb.github.io/
1、什么是channel(管道/通道)?在golang中,channel是多个goroutine(线程)之间传递和同步数据的一种手段。同一时刻,仅有一个线程可以向channel发送数据,同样的,同一时刻也只能有一个线程能从channel读取数据。channel的特性使得它可以解决并发编程可能造成的死锁问题,可以作为Mu...
阅读全文
go语言生成可执行文件
安装go后,我们一般会设置好GOROOT和GOPATH环境变量,但是有时候因为实际工作中项目结构复杂,设置的GOPATH不能满足需要时,可以在cmd设置临时的GOPATH;很多IDE,比如IDEA也可以设置全局的GOPATH和临时的GOPATH,但是编译可执行文件可能有些复杂或者通过IDE编译或者运行会出现app.co...
阅读全文
go中回调函数以及function types
参考了https://www.jianshu.com/p/fc4902159cf5的内容。首先回调函数是啥?从golang的官方文档得知functiontypes的解释是这样的。Afunctiontypedenotesthesetofallfunctionswiththesameparameterandresultty...
阅读全文
go语言利用reflect存储函数和参数
go语言利用reflect存储函数和参数本文提供go语言中一种存储任意类型函数和参数的方法。源代码链接:思路利用_reflect.Value_类型存储多个任意类型的函数和任意类型的参数,以便在其他位置和时机执行。导入包存储类型使用_list.List_,因此需要导入_container/list_和_reflect_两...
阅读全文
用go语言给python3开发模块
实现方法概述因为go语言可以生成gcc可用的静态库,我们可以用go语言实现我们需要的功能,然后编译成静态库,再用C语言调用该静态库,包装成python3模块,然后编译成动态库供python3调用。实例下面用一个用go线程乱序打印五次字符串参数的函数作为示例。go程序文件名:tryme.go代码:__packagemai...
阅读全文
go技巧分享(一)
这是一个系列文章,主要分享go的使用建议和技巧,每次分享3点,希望你能有所收获。1命令行查看文档__$godocstrings.TrimfuncTrim(sstring,cutsetstring)stringTrimreturnsasliceofthestringswithallleadingandtrailingUn...
阅读全文
go语言path/filepath包之Walk源码解析
go语言的提供了很多兼容各个操作系统的文件路径实用操作方法,今天只来看看Walk方法:*Walk(rootstirng,walkFnWalkFunc)error该方法主要用于递归遍历目录:>>walk方法会遍历root下的所有文件(包含root)并对每一个目录和文件都调用walkFunc方法。在访问文件和目录时发生的错...
阅读全文
go语言的BytePtrToString实现
看了很久`go`的`syscall`,左看右看里面有`BytePtrFromString`却没有与之对应的`BytePtrToString`,很不理解这种别扭的设计,只想骂一句太变态了。虽然可以用`cgo`的`C.GoString`代替,但是想到`windows`下面用`cgo`还要先装`MingGW`,就感觉很不完美...
阅读全文