![](https://img-blog.csdnimg.cn/2021052520095734.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Goland
文章平均质量分 50
自学Go语言
高情商:基本上是对别人经验的学习和吸收。
低情商:我他妈就抄了,咋滴。
1453林登图
一个自学的大三学生,看视频看文档看教程,通常都在瞎折腾。
展开
-
Go单元测试 13
简单介绍:单元测试、Go test这里记录的是我个人不太熟练的语法和知识详细内容移步:李文周的博客(非常详细)https://www.liwenzhou.com/posts/Go/16_test/#autoid-0-0-0(因为当时没什么函数测试,所以就抄了,嘿嘿嘿)#测试函数在一个splist.go文件内写入需要被测试的函数,文件名可以随意,但是为了‘值观对应’一般会与文件名相同;在一个.go文件中,如果存在多个需要被测试的函数,则需要…一般是什么文件就_test什么文件…在Goland原创 2021-05-26 12:18:43 · 167 阅读 · 0 评论 -
Go module 12
简单介绍:Go mod 使用、包依赖管理工具这里记录的是我个人不太熟练的语法和知识详细内容移步:李文周的博客(非常详细)go module 是Go语言从 1.11 版本之后官方推出的版本管理工具,并且从 Go1.13 版本开始,go module 成为了Go语言默认的依赖管理工具。#设置环境变量开启 go mod 模式GO111MODULE=ongo mod 命令命令效果go mod edit编辑go.mod文件go mod graph打印模块依赖图go原创 2021-05-26 12:18:01 · 40 阅读 · 0 评论 -
Go错误处理 11
简单介绍:Go错误处理的方式这里记录的是我个人不太熟练的语法和知识详细内容移步:李文周的博客(非常详细)(虽然没有直接说,其实就是defer、panic、recover)首先声明:一直以来,我以为错误处理是很高大上的东西,没怎么碰过,直到…看了这两份文档https://blog.csdn.net/m0_38004619/article/details/98968097https://www.cnblogs.com/zhangboyu/p/7911190.html简单描述:在一个场景中,如果可能原创 2021-05-27 21:06:00 · 70 阅读 · 0 评论 -
Go高并发场景及处理 10
关于高并发可以看看我另一篇文章简单介绍:典型并发场景这里记录的是我个人不太熟练的语法和知识详细内容移步:李文周的博客(非常详细)(然而并没有)#京东秒杀https://zhuanlan.zhihu.com/p/82260208应对高并发场景的方法处理高并发,需要全面考虑:网络请求、服务器性能、IO瓶颈、带宽等?????高并发系统常见的应对措施包括缓存、限流和降级。缓存:使用缓存可以有效缓解服务器的压力、增大系统处理能力、加快请求响应速度,几乎是高并发服务器系统的标配。限流:通过减少请求频原创 2021-05-25 21:24:23 · 172 阅读 · 0 评论 -
Go并发、协程、通道 9
简单介绍:并发、协程、通道这里记录的是我个人不太熟练的语法和知识详细内容移步:李文周的博客(非常详细)#并发并行:多个单核“CPU”或多个“CPU核心”在同时运行不同的任务,称不同任务的并行。并发:一个单核“CPU”或一个“CPU核心”在多个任务间不断快速切换运行,称多个任务在并发。因为各种资源的调度都需要时间,在高并发的场景下,CPU利用率会相对高一些。#协程开启一个协程非常简单:go func(){}这就开启了一个啥都没干的匿名函数。一般使用协程都是为了进行高并发,多以会结合原创 2021-05-25 21:23:39 · 91 阅读 · 0 评论 -
Go接口 8
简单介绍:接口最简单的用法、空接口、关于接受者问题这里记录的是我个人不太熟练的语法和知识详细内容移步:李文周的博客(非常详细)#接口类型接口(interface)定义了一个对象的行为规范,只定义规范不实现,由具体的对象来实现规范的细节。接口可以嵌套一种类型可以实现多个接口多个类型可以实现同一接口接口(interface)是一种类型,一种抽象的类型。这句话是重中之重,当有疑惑是不妨心中默念:接口(interface)是一种类型,一种抽象的类型。几乎是最简单的用法:type A struc原创 2021-05-25 21:23:13 · 87 阅读 · 1 评论 -
Go结构体与方法 7
简单介绍:构造函数、json数据处理、tag标签、结构体方法接收者问题这里记录的是我个人不太熟练的语法和知识详细内容移步:李文周的博客(非常详细)#构造函数在Go语言中没有构造函数这一说,但可以模拟type Post struct { Id int `json:"id"` Content string `json:"aaaaa"` Author string}func new(id int, c string, a string) Post { return Pos原创 2021-05-25 21:20:50 · 62 阅读 · 0 评论 -
Go函数 6
简单介绍:函数闭包、defer、panic、recover这里记录的是我个人不太熟练的语法和知识详细内容移步:李文周的博客(非常详细)#闭包首先介绍前提知识:https://www.cnblogs.com/cxying93/p/6103375.html1.变量作用域函数内部可以直接读取全局变量,但是在函数外部无法读取函数内部的局部变量。2.如何从外部读取函数内部的局部变量?在函数内部再定义一个函数。“理论上” 匿名函数在函数f内部,此时函数f的所有局部变量对匿名函数都是可见的,但是匿名函原创 2021-05-25 21:03:13 · 91 阅读 · 0 评论 -
Go基础的一些东西(写的很垃圾)5
#####json文件写type Website struct { Name string `xml:"name,attr"` Url string Course []string}func main() { info := []Website{{"Golang", "http://c.biancheng.net/golang/", []string{"http://c.biancheng.net/cplus/", "http://c.biancheng.net/linux_原创 2021-05-25 21:02:17 · 114 阅读 · 0 评论 -
Go基础的一些东西(写的很垃圾)4
#####习惯用法//包名可以小写//给包起别名 asd//asd "fmt"//不允许循环引用包//代码要放在GOPATH目录下//导入包的路径要从GOPATH/src后面写起//匿名引用init初始化函数import_"fmt"func init(){fmt.Println("调用init初始化函数")}#####关于各个内置包fmtfmt 包实现了格式化的标准输入输出,这与C语言中的 printf 和 scanf 类似。其中的 fmt.Printf() 和 fmt.Pr原创 2021-05-25 21:01:45 · 118 阅读 · 0 评论 -
Go基础的一些东西(写的很垃圾)3
#####接口定义//type 关键字 接口是特殊的数据类型//接口是一组方法的集合//用于实现不同类型(结构体)的相同方法//版本2 区别在于多了要调用da()函数type cat struct{}func (c cat) say() {fmt.Println("miaomiao")}type dog struct{}func (d dog) say() {fmt.Println("wangwang")}只要实现了say()这个方法的类型都可以称为sayer类型?type s原创 2021-05-25 21:01:12 · 80 阅读 · 0 评论 -
Go基础的一些东西(写的很垃圾)2
#####闭包func f(i int) func() int { return func() int { i++ return i }}a := f(0)fmt.Println(a())#####变参函数func(aa ...int) { for _, asd := range aa { fmt.Println(asd) }}(1, 2, 3, 4)#####压栈deferdefer fmt.Printl原创 2021-05-25 21:00:49 · 38 阅读 · 0 评论 -
Go基础的一些东西(写的很垃圾)1
这些都是我个人在初学Go时候记录下来的语法部分没什么高大上的,只是记下来了而已…#####指针简单使用a := []int{1, 23, 4}q := &a //q是一串地址Gv := *q //v是原来的值var a int = 1b := 2var q *intq = &afmt.Println(a, b, q, *q) //1 2 0xc00000c1a8 1#####模拟枚举(虽然不知道有什么用)const ( a = iota b原创 2021-05-25 20:56:04 · 76 阅读 · 0 评论