发布时间:2023-05-29
浏览次数:0
开发环境安装
在阅读Go源码之前,安装Go语言开发环境是必不可少的。 下面我们介绍一下下载安装的步骤。
1.下载官方Go语言安装包
请根据操作系统版本(Linux、或)和处理器架构(386、amd64或arm)选择。 下载地址为: ,是提供的服务,可能需要使用VPN才能访问。
2.安装Go语言安装包
选择合适的版本下载后,就可以开始安装Go语言安装包了。 过程如下。
, Linux 和 tar 安装
对于 , Linux 和 用户,下载的 tar 压缩文件需要执行以下步骤才能完成安装。
将压缩包解压到/usr/local目录下,命令如下:
tar -C /usr/local -xzf go$VERSION.$OS-$ARCH.tar.gz
选择合适的压缩包进行安装。 例如在64位Linux系统上安装Go1.2.1版本,对应的压缩包为go1.2.1.linux-amd64.tar.gz。
将/usr/local/go/bin添加到系统的环境变量中,可以将以下命令添加到/etc/(系统所有用户均受影响)或$HOME/。 (当前用户受影响)文件完成。
export PATH=$PATH:/usr/local/go/bin
提示:Go的安装环境默认安装在/usr/local(系统为C:\\)路径下。 如果指定本地目录作为安装路径,则必须设置$环境变量。 如果要将安装包解压到$HOME目录下,需要在$HOME/. 文件。
export GOROOT=$HOME/go export PATH=$PATH:$GOROOT/bin
的 pkg 快速安装
下载后缀为.pkg的相关安装包,打开后按照图形界面提示顺利安装。 使用这些技巧时,安装包会默认安装在/usr/local目录下,同时也会将/usr/local/go/bin添加到环境变量中。 安装完成后,使用终端时需要重启一个会话才能生效。
安装
除了源码安装,Go官方还为用户提供了两种安装开发环境的方式:一种是自动解压Zip包安装,需要设置环境变量; 另一种是手动安装。
MSI安装:打开MSI文件sublime text 格式化代码快捷键,按照引导界面一步步操作。 默认安装在 C:\\Go 路径下。 安装程序会手动将 C:\\Go\\bin 目录添加到环境变量中。 同样,需要重启命令行才能生效。
Zip安装:下载并解压Zip文件到您选择的目录,推荐C:\\Go。 如果放在C:\\Go以外的目录下,需要设置变量。 然后将解压后的Go目录下的bin目录(如C:\\Go\\bin)添加到PATH环境变量中。
设置环境变量:在系统下,可以通过“计算机”→“系统属性”→“高级”→“PATH”设置环境变量。
3.测试Go语言环境
完成以上步骤后,Go语言环境安装完毕。 最后,我们来测试一下。
首先,创建一个空白的 .go 文件并输入以下代码:
package main
import "fmt"
func main {
fmt.Printf("hello, world\\n")
}
然后用Go语言工具编译运行,示例如下:
$ go run hello.go
hello, world
如果你看到,一切就都搞定了。
工具配置和方法
不幸的是,没有专门为构建开发的官方 IDE,但开源社区为此做出了巨大贡献。 本节将介绍如何配置和使用几种常用的IDE和编辑器。
1.
是专门为国人开发的Go语言量身定做的IDE。 简单、实用、开源、跨平台。
下载并安装
安装文件托管在平台上。 由于项目是开源的,我们也可以从网站下载项目源码进行安装。 下载地址为:.
打开下载目录,如图1所示,会听到各个版本的下载目录,建议下载最新版本。 有了Go开发环境的安装经验,安装起来会容易很多。
图1 下载列表
下载对应版本后,解压。 对于不同操作系统的用户,对应的安装方法如下:
支持以下 Go 语言阅读功能。
使用的图标都是四图风格,具有浓郁的中国风,打开就会看到介绍。 您可以使用打开文件夹功能直接打开源代码文件夹。 如图2所示,右侧可以看到文件浏览目录、类视图、文件夹列表、大纲和包浏览器等功能; 左侧打开官方.md文件,可以看到支持预览格式,可以方便的在本IDE中阅读文档。
图2 功能界面展示
打开IDE后,可以在设置中查看和更改快捷键设置,如图3所示。
图3 快捷键设置
需要注意的是,代码跳转还是不够完善,只有当代码跳转的文件处于打开(已浏览)状态时,才会正确跳转。
Linux 或 用户可以使用 grep 命令查看。 如果我们要查找的函数是,命令如下:
grep -rl get_instance docker/api
grep -rl [grep_pattern] [file_diretory]
用户可以在文件中使用查找功能。
相信现在大家可以更方便的阅读源码了。
2.文本2
Text2(简称ST2)自2012年发布以来,以简洁华丽的外观、多平台支持、多语言支持和强大的扩展性着称。同样,作为文本编辑器,与VIM相比,它有自己的功能比如目录树,省去了一些配置的麻烦sublime text 格式化代码快捷键,使用起来也方便。
下载
打开Text官网,页面底部有个大图标。 它会根据操作系统的平台手动选择合适的版本,直接点击下载即可。 其实我们也可以打开下载列表页面( ),根据平台选择合适的版本进行下载。
安装
不同系统的用户可以通过不同的方式下载安装Text2,如下:
以上配置完成后,我们就可以在终端中通过subl命令轻松打开Text2了。
插件安装
标签
至此,介绍完毕。 熟练使用以上三个插件,不仅可以轻松阅读源码,而且对Go语言项目的编译也有很大的帮助。
3.维姆
相信习惯使用文本编辑器的读者一定对开源软件Vim相当熟悉和友好。 Vim 被誉为“编辑之神”,学习曲线极其陡峭。 但是,一旦你掌握了 Vim 自带的一套快捷键,代码编辑速度就会飞速提升,从此爱上 Vim。 本节仅作为对 Vim 老用户的介绍,初学者使用 Vim 并不容易。
插件安装
go-vim 是一个 Vim 插件,可以让 Vim 高度支持 Go 语言,所以作为 GoIDE 插件使用 Vim 也是很有必要的。
如果使用插件管理,只需执行以下步骤即可。
cd ~/.vim/bundle
git clone https://github.com/fatih/vim-go.git
对于用户,需要将以下行添加到 .vimrc 文件中:
Plugin 'fatih/vim-go'
但是打开 Vim 并在命令模式下执行: 。
安装插件后,为确保所有依赖的二补码文件(如godef等),可在命令模式下执行以下命令进行手动安装:
:GoInstallBinaries
除了go-vim,还有如下可选插件。
常用命令
Vim 的介绍到此结束,但相信对于 Vim 的老用户来说,探索才刚刚开始。 作为经久不衰、广受赞誉的工具,Vim 一直是每个 Geek 心中的最佳法宝!
4.Emacs
Emacs作为与Vim齐名的文本编辑器,堪称“神级编辑器”。 浏览和编辑 Go 代码也非常方便。 本节仅作为 Emacs 老用户的介绍。 在此之前,用户需要进行适合自己的配置。 下面我们以一个例子来简单介绍几个好用的插件。 用户需要使用goget命令安装gofmt、godef、godoc等工具。
进入模式
go-mode除了提供手动缩进和句型高亮功能外,还集成了Go语言自带的工具,如gofmt、godoc、godef等,在以后的版本中可以使用自带的工具安装,命令如下: mx-go-mode 下面我们主要介绍格式化和定义跳转这两个功能的配置。
格式化
格式化功能直接调用 gofmt 工具,使用户能够将他们的编码风格与其他开发人员保持一致。 在Emacs中,用户可以直接调用gofmt命令对当前窗口的代码进行格式化。 另一种方式是为-save-hook添加一个函数,示例如下:
(add-hook 'before-save-hook 'gofmt-before-save)
这样,每次用户存档时都可以手动完成格式化。
定义跳跃
定义跳转使用godef工具,可以分析用户的代码、其他包中的代码、Go标准库,实现两者之间的定义跳转。 Emacs 提供了 godef-jump 命令来实现跳转。 默认绑定键是 C-cC-j。 用户也可以定义自己的按键绑定,比如绑定到 F3 键:
(add-hook 'go-mode-hook
'(lambda (local-set-key (kbd "") 'godef-jump)))
为了跳转后回跳,用户可以添加如下配置,这样就可以使用F2键返回到原来的位置。
(add-hook 'go-mode-hook
'(lambda (local-set-key (kbd "") 'pop-tag-mark)))
据悉,go-mode还提供了godoc的管理和使用等工具,这里不再赘述。
-去
-go调用工具提供手动补全功能,用户可以直接使用工具安装-mode和-go,配置如下:
(add-hook 'go-mode-hook 'company-mode)
(add-hook 'go-mode-hook
(lambda
(set (make-local-variable 'company-backends) '(company-go))
(company-mode)))
Emacs 还为用户提供了很大的自由度。 建议用户使用最新版本的Emacs和插件,利用好网上贡献的功能和工具,以获得最新的功能和更好的体验。
本文节选自《--容器与容器云》,作者:张磊、孙建波。
如有侵权请联系删除!
Copyright © 2023 江苏优软数字科技有限公司 All Rights Reserved.正版sublime text、Codejock、IntelliJ IDEA、sketch、Mestrenova、DNAstar服务提供商
13262879759
微信二维码