这是我参与「第五届青训营 」伴学笔记创作活动的第 1 天,今天主要学习了两节掘金平台的字节内部课,课程的内容十分紧凑,第一节课讲师快速介绍了Go语言的特点、Go语言的历史与发展以及Go语言的基础语法。第二节课则带我们使用Go内置的标准库,实现了三个小demo,分别是:猜数字、翻译单词、socks5实现等。
Go语言基础
1. Go语言特点
Go语言是一门由Google开发的,简单、高效、易用的编程语言,它有着以下的特点:
- 高性能、高并发
- 语法简单、学习曲线平滑
- 具有丰富的标准库
- 具有完善的工具链(编译、优化、包管理等)
- 静态链接
- 快速编译
- 跨平台(不需要配置交叉编译环境)
- 垃圾回收器(类似Java)
2. Go语言语法要点(部分)
由于之前已经学习过Go语言,因此这里不再对所有的语法进行总结,只列出个人认为比较重要的部分。
2.1 Go指针
和C++等编程语言类似,Go语言在函数中改变某个值的变量,需要通过&变量的形式,将地址传给函数,函数的形参则通过*变量类型的形式来接收这个地址,并通过*变量的形式操作改变量。下面是一个例子:
2.2 结构体方法
Go中的结构体非常常用,它可以用于代替其它语言中的类。而结构体方法则类似于其他面向对象语言中的成员函数,它的格式与普通方法不太一样,需要把对应的类型放到func关键字和函数名之间。
2.3 JSON处理
由于Go语言较多地应用在Web场景中,而Web中一种常见的参数传递方式为通过JSON文件进行传递,因此需要熟悉Go中JSON标准库的常见操作(序列化与反序列化)。