Golang-interface(一 基本使用)
github: https://github.com/ZhangzheBJUT/blog/blob/master/interface.md 一 接口概述 如果说gorountine和channel是支撑起Go语言的并发模型的基石,让Go语言在如今集群化与多核化的时代成为一道亮丽的风景,那么接口是Go语言整个类型系列的基石,让Go语言在基础编程哲学的探索上达到前所未有的高度。 Go语言在编程哲学上是…
github: https://github.com/ZhangzheBJUT/blog/blob/master/interface.md 一 接口概述 如果说gorountine和channel是支撑起Go语言的并发模型的基石,让Go语言在如今集群化与多核化的时代成为一道亮丽的风景,那么接口是Go语言整个类型系列的基石,让Go语言在基础编程哲学的探索上达到前所未有的高度。 Go语言在编程哲学上是…
func firstDayOfISOWeek(year int, week int, timezone *time.Location) time.Time { date := time.Date(year, 0, 0, 0, 0, 0, 0, timezone) isoYear, isoWeek := date.ISOWeek() for date.Weekday() != time.Monday…
原文作者:柔顺的灵魂 来源:简书 Update方法 分析update sql语句: 1update user set first_name = "z", last_name = "zy" where first_name = "Tom" and last_name = "Curise" 比较简单,直接复用之前写的sKV()和mKV()函数: 1//Update src can be *user, …
前言 今天写点有趣的小东西。事情是这样的,我经常看到有些软件加了统计数据的sdk,之后就可以实现统计接口的访问量,接口负载等等数据。而这些功能不需要原有的软件做些什么,对原来的业务完全无入侵,我觉得这样的功能很有实用性,所以没有参考其他类似的软件或者工具,我想自己试试怎么实现这样的功能。 思路 首先,我们先给要做的工具起个名字,就叫monitor。要实现无侵入,那么只能是在业务软件外面套一层,经由…
string转成int: int, err := strconv.Atoi(string) string转成int64: int64, err := strconv.ParseInt(string, 10, 64) int转成string: string := strconv.Itoa(int) int64转成string: string := strconv.FormatInt(int64,10…
默认情况下,将项目打包成二进制的时候是不会加入静态资源文件的,因此在部署的时候还需要捎带上这些文件,比如,一些配置文件,图片,样式表等。 很多时候,这些静态文件是不需要变的,如果能一并加入到二进制文件,就能减少部署时的依赖。 于是有了很多第三方解决方案,将静态资源文件“嵌入”最终的 Go 二进制文件中。最知名的应该是 go-bindata,此外还有很多其他的: github.com/alectho…
一 包的导入语法 在写Go代码的时候经常用到import这个命令用来导入包文件,看到的方式参考如下: import( "fmt" ) 然后在代码里面可以通过如下的方式调用 fmt.Println("hello world") 上面这个fmt是Go语言的标准库,他其实是去GOROOT下去加载该模块,当然Go的import还支持如下两种方式来加载自己写的模块: 相对路径 import "./mod…
欢迎关注公众号《后台开发探索之旅》。 有序集合 日常开发经常需要对数据进行排序,针对不同的场景,采用特定的排序方法,比如: (1)数组排序:将数值存入数组中,对数组进行冒泡、快排等排序方法,得到一个有序数组 (2)二叉搜索:构造二叉平衡树,从根结点开始向左向右搜索,每次查找规模减半,最终找到目标节点 (3)最小根堆:同样将数值存入数组中,对数组进行堆排序,保持最小值始终在堆顶,从而得到最小值 (4…
VS Code的golang开发配置 之 代码提示 之前用VS Code的时候,发现自己的代码的提示一直不好,换用JetBrain的Goland的代码提示是好了,但是比较占用资源。在网上找了一些资料,发现很多人也是遇到第三方或者自己的代码无法提示的情况,但是都没有下文了。后来发现官方文档有介绍,链接如下 https://github.com/Microsoft/vscode-go/wiki/GOP…
背景 简单需要一个文件服务器来传递数据,只要两个功能,一个上传接口,一个下载接口。 选用go http模块实现,比nginx、ftp等更方便快捷。 需求整理 上传接口"/v1/file_upload/" 上传接口增加简单BasicAuth鉴权 上传成功返回下载URL json格式返回 电梯直达 只想文件上传服务器测试接口,以下电梯直达即可 CSDN 5积分下载 白嫖 测试效果 GO代码实现 pac…