Go语言入门|青训营笔记

357 阅读2分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第1天

今天学习了Go语言的基础语法,主要包括语言开发环境、基础语法、标准库等,在课程中老师用三个小项目带我们熟悉了一下Go语言。

1. Go语言简介

Go语言是一种高性能、高并发、学习简单的语言,它拥有丰富的标准库和完善的工具链。由于其部署简单、性能好、学习成本低,现在已经有许多企业开始使用Go语言。

2. 基础语法

Go语言的基础语法并不复杂,有其他语言学习基础的同学应该都不难上手,在具体的语法上可能有一些出入,如循环、变量声明等,需要按照Go语言要求的格式写。Go语言的切片有点类似python的操作,需要注意的是没有负数索引。Go语言也提供指针操作,但较为简单,主要用于修改传入的参数的值。Go的结构体方法可以理解为类成员函数。Go语言提供了JSON操作,对于一个已有的结构体,只要保证每个字段第一个字母是大写,就可以用JSON.marshaler去序列化,变成一个JSON的字符串。序列化后的字符串也能用JSON.unmarshaler反序列化。

3. 实战

3.1 生成随机数

需要注意的是for循环的写法,和随机数的生成。生成随机数时需要用当前时间做种子,否则将一直生成同一个数。

3.2 在线词典

在线词典主要是模拟浏览器发送HTTP请求,再处理接收到的包。转换代码的过程可以通过工具完成,重点是对HTTP协议有所了解。

3.3 socks5代理

socks5是一个明文传输的代理协议。使用socks5代理协议时,首先浏览器和socks5建立TCP连接,代理再和真正的服务器建立TCP连接。在Windows环境下运行时需要先下载netcat,注意命令行使用的是cmd,而不是powershell。