Go by Example / Golang入门教程(非常详细)

转载:https://gobyexample.com/

Go by Example

Go is an open source programming language designed for building simple, fast, and reliable software.

 

 

Go by Example is a hands-on introduction to Go using annotated example programs. Check out the first exampleor browse the full list below.

  • Hello World
  • Values
  • Variables
  • Constants
  • For
  • If/Else
  • Switch
  • Arrays
  • Slices
  • Maps
  • Range
  • Functions
  • Multiple Return Values
  • Variadic Functions
  • Closures
  • Recursion
  • Pointers
  • Structs
  • Methods
  • Interfaces
  • Errors
  • Goroutines
  • Channels
  • Channel Buffering
  • Channel Synchronization
  • Channel Directions
  • Select
  • Timeouts
  • Non-Blocking Channel Operations
  • Closing Channels
  • Range over Channels
  • Timers
  • Tickers
  • Worker Pools
  • Rate Limiting
  • Atomic Counters
  • Mutexes
  • Stateful Goroutines
  • Sorting
  • Sorting by Functions
  • Panic
  • Defer
  • Collection Functions
  • String Functions
  • String Formatting
  • Regular Expressions
  • JSON
  • Time
  • Epoch
  • Time Formatting / Parsing
  • Random Numbers
  • Number Parsing
  • URL Parsing
  • SHA1 Hashes
  • Base64 Encoding
  • Reading Files
  • Writing Files
  • Line Filters
  • Command-Line Arguments
  • Command-Line Flags
  • Environment Variables
  • Spawning Processes
  • Exec'ing Processes
  • Signals
  • Exit

by Mark McGranaghan | source | license

 

Go语言入门教程,Golang入门教程(非常详细)

Go语言也称 Golang,兼具效率、性能、安全、健壮等特性。这套Go语言教程(Golang教程)通俗易懂,深入浅出,既适合没有基础的读者快速入门,也适合工作多年的程序员查阅知识点。

这套教程在讲解一些知识点时,将 Go 语言和其他多种语言进行对比,让掌握其它编程语言的读者能迅速理解 Go 语言的特性。

Go语言从底层原生支持并发,无须第三方库、开发者的编程技巧和开发经验就可以轻松搞定。

其他Go语言入门教程:Go语言教程简明版、Go语言 30 分钟入门教程

第1章 Go语言简介

1.Go语言简介

2.Go语言为并发而生

3.哪些项目使用Go语言开发?

4.Go语言的性能如何?

5.Go语言标准库强大

6.Go语言上手简单

7.Go语言代码风格清晰、简单

8.安装Go语言开发包

第2章 Go语言基本语法

1.Go语言变量的声明

2.Go语言变量的初始化

3.Go语言多个变量同时赋值

4.Go语言匿名变量

5.Go语言整型(整数类型)

6.Go语言浮点类型(小数类型)

7.实例:输出正弦函数(Sin)图像

8.Go语言bool类型(布尔类型)

9.Go语言字符串

10.Go语言字符类型(byte和rune)

11.Go语言数据类型转换

12.Go语言指针

13.Go语言变量生命期

14.Go语言常量

15.Go语言模拟枚举

16.Go语言类型别名

第3章 Go语言容器

1.Go语言数组

2.Go语言切片

3.使用append()为切片添加元素

4.Go语言切片复制

5.Go语言从切片中删除元素

6.Go语言map(映射)

7.Go语言遍历map

8.map元素的删除和清空

9.Go语言sync.Map

10.Go语言list(列表)

第4章 流程控制

1.Go语言分支结构

2.Go语言循环结构

3.输出九九乘法表

4.Go语言键值循环

5.Go语言switch语句

6.Go语言goto语句

7.Go语言break(跳出循环)

8.Go语言continue

第5章 Go语言函数

1.Go语言函数声明

2.示例:将秒转换为具体的时间

3.示例:函数中的参数传递效果测试

4.Go语言函数变量

5.Go语言字符串的链式处理

6.Go语言匿名函数

7.Go语言函数类型实现接口

8.Go语言闭包(Closure)

9.Go语言可变参数

10.Go语言defer(延迟执行语句)

11.Go语言处理运行时错误

12.Go语言宕机(panic)

13.Go语言宕机恢复(recover)

第6章 Go语言结构体

1.Go语言结构体定义

2.Go语言实例化结构体

3.初始化结构体的成员变量

4.Go语言构造函数

5.Go语言方法和接收器

6.为任意类型添加方法

7.示例:使用事件系统实现事件的响应和处理

8.类型内嵌和结构体内嵌

9.结构体内嵌模拟类的继承

10.初始化内嵌结构体

11.内嵌结构体成员名字冲突

12.示例:使用匿名结构体解析JSON数据

第7章 Go语言接口

1.Go语言结构声明(定义)

2.Go语言实现接口的条件

3.Go语言类型与接口的关系

4.示例:Go语言实现日志系统

5.Go语言排序

6.Go语言接口的嵌套组合

7.Go语言接口和类型之间的转换

8.Go语言空接口类型

9.示例:使用空接口实现可以保存任意值的字典

10.Go语言类型分支

第8章 Go语言包(package)

1.Go语言GOPATH

2.Go语言package

3.Go语言导出包中的标识符

4.Go语言import导入包

5.Go语言工厂模式自动注册

第9章 Go语言并发

1.Go语言轻量级线程

2.Go语言调整并发的运行性能

3.并发和并行的区别

4.goroutine和coroutine的区别

5.Go语言通道(chan)

6.示例:并发打印

7.Go语言单向通道

8.Go语言带缓冲的通道

9.Go语言通道的多路复用

10.Go语言模拟远程过程调用

11.示例:使用通道响应计时器的事件

12.Go语言关闭通道后继续使用通道

13.Go语言Telnet回音服务器

14.检测代码在并发环境下可能出现的问题

15.互斥锁和读写互斥锁

16.Go语言等待组

第10章 Go语言反射

1.通过反射获取类型信息

2.通过反射获取指针指向的元素类型

3.通过反射获取结构体的成员类型

4.Go语言结构体标签

5.通过反射获取值信息

6.通过反射访问结构体成员的值

7.判断反射值的空和有效性

8.通过反射修改变量的值

9.通过类型信息创建实例

10.通过反射调用函数

第11章 Go语言编译与工具

1.go build命令

2.go run命令

3.go install命令

4.go get命令

5.go test命令

6.go pprof命令

第12章 “避坑”与技巧

1.高效地使用Go语言并发特性

2.反射——性能和灵活性的双刃剑

3.接口的nil判断

4.Go语言map的多键索引

 

Go语言入门必读

1.Go语言中文网:论坛+教程+文档+书籍

2.Go语言入门须知:Go语言的9大优势和3大缺点

3.Go语言教程汇总,Golang学习资料整理

4.Golang语言如何入门,如何提高?

5.系统学习Golang,推荐几本靠谱的书籍或者教程?

6.Go语言Web开发教程之最好的6个Go语言Web框架

7.Go语言视频教程(从入门到进阶)- 慕课网

8.Golang视频教程 - 极客学院

你可能感兴趣的:(go)