【一】Go语言介绍及引入
- Go语言的介绍
- Go语言的诞生
- Go语言版本的发展
- Go语言的特性
- Go语言的应用领域
【二】Go开发环境下载与安装
- Go编译器的下载
- Windows下Go的安装配置
- Windows配置GOPATH环境
- Mac下Go的安装配置
- Mac配置GOPATH环境变量
- 入门案例
- 开发工具
【三】Go语言基础之变量
- 注释语法
- 变量声明
- 变量使用
- 同时定义多个变量
- 变量要先定义,再使用
- 变量类型
【四】Go语言基础之函数
- 函数基础
- 函数语法
- 无参无返回值
- 有参无返回值
- 2个参数和1个返回值
- 2个参数和2个返回值
_
代替变量- 命名返回值
- 函数高级
- 不定长参数
- 匿名函数
- 函数是一等公民
- 闭包函数
- 函数的参数和返回值都是类型的一部分
- 给类型重命名
【五】Go语言基础之包的使用
- 包的作用
- 定义包的步骤
- 老版本GOPATH和新版本GO MODEL
- 将GOPATH修改为GO MODEL
【六】Go语言基础之循环语句
- 判断语句 if ~ else
- 循环
- 基于索引的循环
- 基于迭代的循环
- switch语句
- default的使用
- fallthrough的使用
【七】Go语言基础之数组、切片
- 数组
- 数组的定义
- 数组的使用
- 数组大小固定
- 指定位置赋初值
- 定义数组并固定长度
- 数组的循环
- 多维数组
- 切片
- 通过数组创建切片
- 切片的使用
- 切片的变化会影响底层数组
- 底层数数组的变化也会影响切片
- 切片的长度和容量一
- 切片的容量和长度二
- 通过make创建切片
- 追加切片
- 追加切片后底层数组的变化
- 切片的函数传递
- 多维切片
- 循环多维切片
- copy
【八】Go语言基础之可变函数参数、map的使用
- 可变长参数
- 任意长度的指定类型的参数
- 任意长度的任意类型的参数
- 切片类型的参数传入
- map类型
- 定义map
- 初始化map
- map的使用
- map的长度
- map类型的零值
- map类型之间不能
==
比较
- 各种类型的零值
【九】Go语言基础之字符串
- 字符编码
- 字符串操作
- 获取字符串的字节(byte)
- 通过字节切片构建字符串
- 通过rune构建字符串
- 字符串的长度
- 字符串不可变
【十】Go语言基础之指针
- 什么是指针
- 指针的定义和使用
- 指针的语法基础
- 指针的定义和使用
- 指针的指针
- 指针反解
- 指针类型的零值
- 指针是引用类型
- 不要向函数传递数组的指针,而应该使用切片
- 数组的指针不需要解引用
- 指针之间不支持运算
- 指针数组和数组指针
【十一】Go语言基础之结构体
- 什么是结构体
- 结构体的定义和使用
- 结构体语法
- 结构体的定义和使用
- 结构体初始化
- 结构体使用
- 创建匿名结构体
- 结构体的零值
- 结构体当函数参数传递
- 访问结构体字段
- 匿名字段
- 结构体嵌套
- 字段提升
- 导出结构体和字段
- 结构体相等性