- 1.4.1 Go入门指南 比较适合新手,内容相对基础一些
- 1.4.2 Go语言圣经 书如其名
- 1.4.3 Go语言中文网 找对圈子,学的更快
- 1.4.4 菜鸟教程 这个网站非常适合快速上手某门语言
- 1.4.5 Go语言高级编程 内容适合进阶
- 1.4.6 go语言原本 欧神出品,虽然号称进度只有9.9%/100%,但不妨碍它的优秀,值得一看
- 1.4.7 golang设计模式 设计模式 Golang实现,《研磨设计模式》的golang实现
- 1.4.8 Go实战开发 作者是著名的 Go 开源项目 beego 的作者,他的最佳实践非常值得阅读
- 1.4.9 Go palyground 不用搭建本地 Go 环境,在线就编写 Go 的代码
- xgen-编写XSD工具基础库,可将XML模式定义为多语言类型或声明的代码
- GQLEngine-高性能Go语言的GraphQL服务端落地框架
- Orange 一款基于Golang语言的Web开发框架
- Go-admin -基于Golang快速搭建可视化数据管理后台的框架
- Go-snowflake Go语言实现的snowflake算法,为分布式系统实现唯一ID,单机测试1s可生成20id
- KubeVela 一个简单易用且高度可扩展的应用管理平台与核心引擎
- TiDB 见识过mysql性能瓶颈之后你会想要选择的一款数据库
- EasyMIDI EasyMidi是一个简单可靠的库,用于处理标准Midi文件(SMF)。
下载地址: https://www.golangtc.com/download
- Jetbrains GoLand 强烈推荐
- Jetbrains IDEA + go插件
- VS Code
- Atom
- liteide
- Sublime Text
- glide
- 安装:<https://glide.sh/>
- 初始化
- 依赖下载
- mod
从内存分配策略(堆、栈)的角度分析,函数传递指针真的比传值效率高吗?
通过汇编看golang函数的多返回值 | 🏆 技术专题第二期征文
golang面试题:reflect(反射包)如何获取字段tag?为什么json包不能导出私有变量的tag?
没有明确初始值的变量声明会被赋予他们的零值
编程书说的“Go程序员应该让聚合类型的零值也具有意义”是在讲什么
- 零值是:
- 数值类型为0
- 布尔类型为false
- 字符串为""(空字符串)
- 零值和空值的关系
- 零值的空值的区别
详解Go regexp包中 ReplaceAllString 的用法
golang的fmt包String(),Error(),Format(),GoString()的接口实现
从goim定制, 浅谈 go interface 解耦合与gRPC
golang面试题:能说说uintptr和unsafe.Pointer的区别吗?
Strings、bytes and runes -- 就要学习 Go 语言
go中的strings, bytes, runes 和 characters
Strings、bytes and runes -- 就要学习 Go 语言
Golang 中[]byte, string和[]rune的相互转化的底层原理和剖析
Golang 中一个 time.Duration 相关类型转换问题
流程控制语句:for、if、else、switch、defer
Golang 高并发编程For循环中使用Goroutine最容易犯的错误
[Golang]这几个for-range的坑,你必须要会呀,铁汁
switch 的求值顺序
包含该defer语句的函数执行完毕时,defer后的函数才会被执行 -
推迟调用
在一个函数中执行多条defer语句,它们的执行顺序与声明顺序相反。
推迟的函数调用会被压入一个
栈
中。当外层函数返回时,被推迟的函数会按照后进先出的顺序调用。
Go 拥有指针。指针保存了值的内存地址。
一个结构体(struct)就是一组字段(field)。
结构体字段使用点号来引用
结构体字段可以通过结构体指针来访问
结构体声明可以通过直接列出字段的值来新分配一个结构体。
类型[n]T表示拥有n个T类型的值的数组。
Go之[]byte字节数组与string字符串相互转换https://juejin.cn/post/6844903796917682189
每个数组的大小都是固定的。而切片则为数组元素提供动态大小的、灵活的视角。在实践中,切片比数组更常用。
切片就像引用的数组,切片并不直接存储数据,它只是描述了底层数组中的一段。
切片文法类似于没有长度的数组文法。
连nil切片和空切片一不一样都不清楚?那BAT面试官只好让你回去等通知了。
切片可包含任何类型,甚至包括其它的切片。
for循环的range形式可遍历切片或映射。
- 指针接收者
- 方法与指针重定向
- 选择值或指针作为接收者
[译] Part 31: golang 中的自定义 error
Golang 最细节篇 —— Reader,ReaderAt 的区别,你如果是做存储的,可千万别搞错了;
golang 图像验证码 转载
Golang 实现轻量、快速的基于 Reactor 模式的非阻塞 TCP 网络库
面试官让我用channel实现sync包里的同步锁,是不是故意为难我?
Visual Studio Live Share - 和你的队友同步共享代码,即时编辑
kingtask:一个由 Go 开发的轻量级的异步定时任务系统
用一个简易的 web chat 说说 Python、Golang、Nodejs 的异步
Golang 的 协程调度机制 与 GOMAXPROCS 性能调优
go并发之goroutine和channel,并发控制入门篇
go语言之行--golang核武器goroutine调度原理、channel详解
Golang —— goroutine(协程)和channel(管道)
##3. GMP模型
[深入理解Golang之channel](https://juejin.cn/post/6844904016254599176)