这是我参与「第三届青训营 -后端场」笔记创作活动的的第1篇笔记
1.课程目录
1.1 Go语言上手-基础语言
1.1.1 什么是go语言
1.1.2哪些公司在使用Go语言
1.1.3字节跳动为什么全面拥抱Go语言
1.2 Go语言入门
1.2.1开发环境的配置
1.2.2 在vscode上安装go插件集成开发环境
1.2.3 基础语法-Hello Word
1.2.3 基础语法-变量
变量的声明有两种方式: 关键字 var
1:var a = "initial"
2: f : float32(e)
常亮的声明:关键字 const
1: const s string = "constant"
1.2.4 基础语法- if else
注意事项:
1、if后面的条件表达式要省略括号
2、if后面必须跟着大括号
1.2.5 基础语法-循环
1.2.6 基础语法-switch
switch 默认会加上break;自动跳出循环
1.2.7 基础语法-数组
1.2.8 基础语法-切片
一个可变长度的数组,并且有更多丰富的操作
例如:
s := make([] string,3)创建一个切片
s = append(s,"d")追加元素
1.2.9 基础语法-map
golang里面的Map是完全无序的,不会按照顺序去读取。
r, ok := m["unknow"] 判断Map中的key是否存在
1.2.10 基础语法-range
对于一个map,我们可以使用range进行快速遍历
1.2.11 基础语法-函数
函数可以返回多个值
1.2.12 基础语法-指针
指针主要的作用,对传入的参数进行指定的修改
1.2.13 基础语法-结构体
结构体:带类型的字段的集合
使用指针对结构体的修改,可以避免大结构体的开销
1.2.14 基础语法-结构体方法
带指针可以对结构体进行修改
1.2.15 基础语法-错误处理
调用这些带有错误函数的时候,需要接受两个参数
1.2.16 基础语法-字符串操作
1.2.17 基础语法-字符串格式化
1.2.18 基础语法-JSON处理
定义一个结构体,只要保证每个字段的首字母大写,这个结构体可以用json.Marshal(a)去进行序列化,
1.2.19 基础语法-时间处理
time.Now()快速获取当前时间
1.2.20 基础语法-进程信息
1.3 实战一-猜谜游戏
1.3.1 猜谜游戏
问题1:为什么一直是同一个数字呢?
答案:在使用随机函数之前,我们要用时间戳来初始化随机数种子
修改后的代码:
再次测试的结果:会产生0-100之间的数
1.3.2 读取用户输入
1.3.3 实现判断逻辑
1.3.4 for循环实现多次猜谜
1.4 实战二-在线词典介绍
通过查询对应的单词,输出对应的音标和注释
通过调用第三方的API去查询单词,并打印出来
可以学到:
1、利用Go语言发送http请求
2、解析Json
3、代码生成,提高开发效率