Go 快速开发 | 01 - Go 语言介绍与环境配置

210 阅读4分钟

一、Go 语言介绍

Go(Golang) 是 Google 发布于 2009 年的一门静态强类型、编译型语言,Go 的语法与 C 相近,Go 官网对 Go 语言的描述是 Build fast, reliable, and efficient software at scale 既 Go 是一门能够大规模的、快速的构建高效并且可靠的软件。

  • Easy to learn and get started with
  • Built-in concurrency and a robust standard library
  • Growing ecosystem of partners, communities, and tools

使用 Go 语言构建应用的企业有:

image.png

Go 语言是一门开源、高效、简介的语言,不仅拥有静态编译语言如 C 语言的安全性和高性能,还拥有动态语言如 Python 的开发速度和易维护性。

Go 是非常有潜力的语言,Go 的应用场景包括 Web 开发、区块链开发、大型游戏服务端开发以及分布式/云计算开发等。

动态类型、静态类型、强类型、弱类型

动态类型或者静态类型语言的判断标准是类型检查(检查变量的类型)发生的阶段,动态类型语言的类型检查发生在运行期,静态类型语言的类型检查发生在编译期。

Python 是动态类型语言,我们都只 Python 代码可以直接运行,不需要编译,自然也就没有在编译期检查类型的动作,动态类型中的所有变量的定义不需要显示的声明数据类型,变量赋值发生在运行阶段。

name = "Stark"
age = 21

静态类型语言中所有的变量都必须显示的声明数据类型,如 Java,如果不声明变量类型,会导致编译失败。

String name = "Stark";
Integer age = 21;

强类型还是弱类型?

强类型语言是指对变量有着较强的类型检查机制,较强的检查机制体现在表达式计算中,如 Python、Java 强类型语言是不支持字符串和数组进行运算的。

name = "Stark"
age = 21
​
name_age = name + age
print(name_age)

上述代码运行时会报错 TypeError 既类型错误,如果是 Java 语言的字符串和数字进行计算会直接编译失败,因为不能确定计算的结果是字符串还是数字。

弱类型语言则没有较强的类型检查机制,如 Javascript,打开浏览器的控制台,执行以下代码:

var name = "Stark"
var age = 21
var name_age = name + age
console.log(name_age)

最终输出结果是 Stark21,undefined 类型。常见的语言所属类型如下:

  • 动态强类型的语言有:Ruby、Python、Groovy
  • 静态强类型的语言有:Java、Go、Scala
  • 动态弱类型的语言有:Javascript、Perl、PHP
  • 静态弱类型的语言有:C、C#

二、Go 开发环境配置

Go 安装

Go 的安装方式有两种,一种是直接通过下载 Go 稳定版的安装包,通过 GUI 进行安装。

Go 官网提供了 Go 安装包的下载,可以根据运行 Go 的系统来下载不同的版本,目前最新的稳定版是 go1.18.3。

image.png

这里通过点击安装包下载容易出现报错

image.png

可以将下载地址拷贝通过命令行(Mac、Linux)或者其他下载器(Windows)进行下载

wget https://dl.google.com/go/go1.18.3.darwin-amd64.pkg

image.png

安装包下载完成之后,点击安装即可

image.png

第二种方式是通过 Homebrew 或者 yum/apt-get 命令来安装 Go

image.png

image.png

安装完成之后可以通过 go version 来查看安装的版本

hostname$ go version
go version go1.18.3 darwin/amd64

可以通过 go help 来查看关于 Go 的命令格式以及可执行的命令

image.png

通过 go env -w GOPROXY=https://goproxy.cn,direct 设置国内的代理,可以解决部分包无法下载的问题。

go env 命令可以查看 Go 语言的环境配置

image.png

Go IDE 配置

这里使用 Goland 作为 IDE,可以通过 JetBrains 官网下载

image.png

下载安装完成后启动 Goland,点击 Settings 设置 GOROOT,既安装 Go 的安装路径,可以通过 go env 来获取。

image.png

这里点击 Add SDK —> Local,选择 Go 的安装目录之后,IDE 提示报错如下:

image.png

解决这个问题需要修改 Go 安装目录下的 /go/src/runtime/internal/sys/zversion.go 文件,有可能需要给该文件添加编辑权限,添加版本信息。

const TheVersion = `go 1.18.3`

image.png

保存之后,再次重新打开 Goland 设置 GOROOT,可以看到安装的 go1.18.3 版本,选中并点击 Apply 即可

image.png

三、创建第一个 Go 项目

点击 Create New Project,这里选择 Go Modules 就可以将项目目录创建在任意位置,而不用只能在 GOPATH 目录下。

image.png

点击 Create 进入项目目录,创建 Go File,添加如下代码:

// filename: main.go

package main

import "fmt"

func main() {

   fmt.Println("Hello, Go!")
}

选中该文件,点击 Run go build main.go 即可运行文件中的代码,这里的运行结果中输出了许多 Go 的配置信息,可以通过设置将这些信息折叠。

image.png

点击 Help -> Find Action... -> Registry...,取消选中 run.processes.with.pty

image.png

再次运行 main.go 文件,输出结果如下:

image.png

Go 的配置信息已经被折叠起来了。

本文正在参加技术专题18期-聊聊Go语言框架