Go语言上手-基础语言 | 青训营笔记

136 阅读2分钟

这是我参与「第三届青训营 -后端场」笔记创作活动的的第 1 篇笔记

本文记录我初次学习 Golang 的一些记录,可能写的较为简略。

1. 基础环境安装

1.1 基本环境

操作系统首先排除 Windows,所以我的 Go 语言环境是安装在 WSL2 上的。在 Ubuntu 下安装 Go 语言还是蛮方便的,使用如下命令基本就安装好了

sudo apt-get install golang-go

对了最好再设置个代理

echo export GOPROXY=https://mirrors.aliyun.com/goproxy/ > .bashrc

更详细的参考在这篇文章:如何为Linux安装Go语言

1.2 编辑器

vscode 一把梭。安个 wsl 和 go 插件就完事了

2. Go 语言入门(不算入门的入门)

首先强烈建议过一遍官方教程。官方提供了在线平台,我们可以一边看教程一边码代码

2.1 前言

首先说一下我对 Golang 的直观感受吧。因为我之前一直都在写 C++,所以刚看到 Go 语言的代码的时候有点懵,不是说难以理解,是因为不习惯哈哈哈,就比如:

  • C++
int main(int argc, char** argv){}
  • Golang
func main(argc int, argv string[]) int {}

主要的区别是 C++ 的属性类型/返回值的类型都是写在前面的,而在 Go 中是写在后面的。这里给出了原因

2.2 基本语法

学习一个语言的基本语法当然是从循环、分支、判断之类的开始,我们直接看几个代码熟悉熟悉就算学会了(

  • 循环

循环就一个 for 关键字,配合多种写法达到不同效果。下面写几个典型:

    for {}         // while (true) {}
    for i < 100 {} // while (i < 100) {}
    for i := 0; i < 5 { i = i + 1} 
  • 分支与判断

if else 走天下

    if 8 % 4 == 0 {
        fmt.Println("8 is divisible by 4")
    }

    if num := 9; nun < 0 {
        fmt.Println(num, "is negative")
    } else if num < 10 {
        fmt.Println(num, "has 1 digit")
    } else {
        fmt.Println(num, "has multiple digits")
    }

switch 也可以走天下(就是比较灵活,case 里面可以写多个条件,而且不用在后面追加 break)

    switch i {
    case 1:
        ...
    case 2, 3, 4:
        ...
    default:
        ...
    }
  • 函数
func add(a int, b int) int { return a + b }