1 Go语言简介


1.1 Go语言特性

  • 语法简单
    Go语言的语法规则严谨,没有歧义,更没什么黑魔法变异用法。任何人写出的代码都基本一致,这使得Go语言简单易学。放弃部分“灵活”和“自由”,换来更好的维护性。将“++”、“--”从运算符降级为语句,保留指针,但默认阻止指针运算,带来的好处是显而易见的。还有,将切片和字典作为内置类型,从运行时的层面进行优化,这也算是一种“简单”。
  • 并发模式
    Go从根本上将一切都并发化,运行时用 Goroutine 运行所有的一切,包括 main.main 入口函数。可以说,Goroutine 是 Go 最显著的特征。它用类协程的方式来处理并发单元,却又在运行时层面做了更深度的优化处理。这使得语法上的并发编程变得极为容易,无须处理回调,无须关注线程切换,仅一个关键字,简单而自然。
  • 内存分配
    除偶尔因性能问题而被迫采用对象池和自主内存管理外,我们基本无须参与内存管理操作。
  • 垃圾回收
    Go 的 1.5 版本实现并发标记,逐步引入三色标记和写屏障等等,都是为了能让垃圾回收在不影响用户逻辑的情况下更好地工作。
  • 静态链接
    运行时、依赖库直接打包到可执行文件内部,简化了部署和发布操作,无须事先安装运行环境和下载诸多第三方库。
  • 标准库
    Go 标准库虽称不得完全覆盖,但也算极为丰富。其中值得称道的是 net/http,仅须简单几条语句就能实现一个高性能 Web Server。
  • 工具链
    无论是编译、格式化、错误检查、帮助文档,还是第三方包下载、更新都有对应的工具。内置完整测试框架,其中包括单元测试、性能测试、代码覆盖率、数据竞争,以及用来调优的 pprof。除此之外,还可通过环境变量输出运行时监控信息,尤其是垃圾回收和并发调度跟踪,可进一步帮助我们改进算法,获得更佳的运行期表现。

1.2 Go语言集成开发环境

  1. Goland
    Goland 是由 JetBrains 公司开发的一个新的商业 IDE,旨在为 Go 开发者提供的一个符合人体工程学的新的商业 IDE。Goland 整合了 IntelliJ 平台(一个用于 java 语言开发的集成环境,也可用于其他开发语言),提供了针对Go语言的编码辅助和工具集成。
  2. LiteIDE
    LiteIDE是一款专门针对 Go 开发的集成开发环境,在编辑、编译和运行 Go 程序和项目方面都有非常好的支持。是一款非常好用的轻量级 Go 集成开发环境(基于 QT、Kate 和 SciTE),包含了跨平台开发及其它必要的特性,对代码编写、自动补全和运行调试都有极佳的支持。它采用了 Go 项目的概念来对项目文件进行浏览和管理,它还支持在各个 Go 开发环境之间随意切换以及交叉编译的功能。同时,它具备了抽象语法树视图的功能,可以清楚地纵览项目中的常量、变量、函数、不同类型以及他们的属性和方法。
  3. Visual Studio Code(简称VS Code)
    是一款由微软公司开发的,能运行在 Mac OS X、Windows 和 Linux 上的跨平台开源代码编辑器。VS Code 使用 JSON 格式的配置文件进行所有功能和特性的配置,同时它还可以通过扩展程序为编辑器实现编程语言高亮、参数提示、编译、调试、文档生成等各种功能。


2 Go开发环境搭建

2.1 基本步骤

这里我们以Ubuntu系统为例,搭建VS CodeGo语言集成开发环境

  1. 下载Go语言安装包和VS Code并在自定义目录下解压
  2. 添加环境变量和工作变量到系统环境中
  3. 查看当前Go版本,判断是否配置成功
  4. 输出测试代码,判断是否安装成功
  5. 完成搭建

2.2 安装GoLang

  1. 在GO语言官网下载Linux版本安装包
    Go下载网址:https://golang.google.cn/dl/
  2. 下载成功后放入自定义目录下进行解压
    sudo tar -xzvf go1.14.10.linux-amd64.tar.gz
  3. 在该自定义目录下再创建一个文件夹,作为Go工作环境,即GOPATH路径
    mkdir gopath
  4. 环境配置
  • 打开终端,对profile文件进行编辑

sudo vim /etc/profile

    • 在打开的文件中,在文件最后输入以下代码,其中,GOROOT代表的是GO安装文件的存放位置,GOPATH放的是资源目录的位置,即上述我们新创建的文件夹。大家根据自己的存放位置进行调整。

export GOPATH=/home/roger/Documents/gopath
export GOROOT=/home/roger/Documents/go
export GOARCH=amd64
export GOOS=linux
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin

    • 编辑完成后,保存并退出
    • 通过终端输入命令查看安装与环境配置是否成功。出现配置信息则代表配置成功。

go env

2.3 安装必要工具和插件

2.4 测试

注意:我们的项目源代码需要放在GOPATH目录下的src文件夹中。

例如:在$GOPATH下建立hello文件夹,里面创建main.go文件。

编写好后进行保存,如果没有语法错误则会默认生成与文件夹同名的可执行文件hello

输入go run hello.go

成功运行后则代表环境搭建成功,可以进行项目创作了。