这是我参与「第五届青训营 」伴学笔记创作活动的第 1 天。
本次青训营后端进阶班的第一节课,我学习了Go语言的语法基础,并且在老师的带领下完成了3个Go语言实战案例。
虽然我有幸进入了进阶班,但在go语言上我还是入门水平,通过学习今天的两节视频录播课让我受益颇多。
这里先说一句题外话,进阶班的大佬真的很多,唠嗑群里的985大佬、竞赛大佬、实习经历丰富的大佬...等等,我虽然基础不如他们牢固,但我会在本次青训营一个月的时间中努力提升自我,完善代码能力和计算机综合知识的储备,争取追上这些大佬。
本堂课程第一节课着重介绍了Go语言的语法,以下是我列举的一些重点和注释。
1、变量
var a int
var s = "str"
a := 1
2、常用关键字
if a > b{
a += 1
} else if a < b{
b += 1
} else{
a = 1
}
for i:= 1;i < 5;i++{
fmt.println(i)
}
j := 1
for{
j += 1;
}
3、输入输出流
输入输出流用到了fmt标准库
输出流:fmt.println("hello word!")
s:= "wolrd"
fmt.printf("hello %v",s)
输入流:fmt.scanf()
fmt.scanf返回两个变量,第一个是int型变量,是scanf扫描成功的数量,第二个是error,返回报错信息,下面举个例子,让scanf读入一个int型变量
var input int;
_, err = fmt.scanf("%d",&input)
if err != nil{
fmt.Println("An error occured while reading input. Please try again.Error is", err
}
4、数组和切片
数组
var a [5]int
切片,切片类似Python的list,可以直接append,也能进行切片操作
s := make([]string,3)
s = append(s,"a")
fmt.println(s[:2])
第二节课介绍了Go项目的实战,通过这三个实战案例,我学到了用Go进行抓包的操作,并且了解了curl转Go代码以及json文件转结构体的网站,这对我以后的编码生涯会有很大的帮助。
第二节课留了三个作业,目前已完成第一个作业,第二个作业目前遇到了一点问题。我尝试了必应翻译和DeepL翻译,这两个payLoad中的request请求都不如彩云小译来的简洁,目前正在探索解决方法或者换其他的翻译引擎。作业的笔记会在完成后写出。