go语言环境安装

简介: go语言系列

安装

软件的安装常用三种方式
1. 在线安装
这种安装方式是通过系统提供的安装工具,自动下载安装包,并自动安装到系统的固定目录下
2. 离线二进制安装
通过手动下载官方提供编译好的二进制执行程序压缩包,在本地手动的解压到指定的目录下,并将可执行程序的路径加入到环境变量PATH中,使得在命令行工具中,可以在任意目录中使用该命令行工具。
3. 离线源码安装
在本地对源码进行make操作,将其编译为二进制的可执行程序。并将其copy到执行的目录下并加入到PATH环境变量中

以上对三种安装的原理做了简单的阐述。go语言环境同样适用。

选择喜欢的安装方式,在go语言中文网下载对应的包,安装以上的说明进行安装

GOPATH

GOPATH是一个go语言的环境变量,官方给出的说明

The GOPATH environment variable is used to specify directories outside of $GOROOT that contains the source for Go progects and theire binaries.

简单的说,就是go语言依赖的一个环境,在编译时会在该目录下查找第三方依赖的包

在1.11版本之前,需要引用第三方包的项目需要将代码放到该目录下,在该路径下存在三个目录

 ~/go  tree -L 1
.
├── bin  // 二进制可执行程序
├── pkg  // 编译链接的第三方包
└── src // 源码

3 directories, 0 files

编辑器

编辑器就是一个写代码的工具,按照其专业化程序,可以分为两大类,编辑器和IDE, 这里在加上远古时期的vim和Emacs将其归为三类吧。

  • vim
    上手比较难,大量的快捷键操作,熟练使用后效率很高,目前小编的使用程度刚入门,在命令行中编写代码还是比较有感觉的。再结合tmux分屏工具,可以打造一个很舒服的开发环境。

在配置文件中添加vim-go插件,即可使用打造出符和go开发习惯的编辑功能。

  • sublime
    sublime是一个简易高效的编辑器,强大的插件机制可以让其变得足够的强大。sublime内置python脚本语言,可以进行宏命令和插件的开发,也是小编平时使用最多的工具

使用sublime作为go开发工具,只需要安装godef(用于代码跳转)和goSublime(go工具集)即可。注意,goSublime该插件现在还不支持自动化安装,需要手动将安装包下载到sublime的安装包目录下。

  • goland
    这是专为go打造的集成化开发工具IDE, 很多初学者一上来就选择这个,感觉不是很好。使用定制化的编辑器会更好些,IDE工具就像一个黑盒。当然根据自己的兴趣和习惯自由选择。

总结

本篇是go系列的第一篇,从三方面内容展开,安装,GOPATH,编辑器,没有告诉怎么一步一步安装,而是教你怎么去抓鱼。

    =============================== END ======================================
       ![](https://liushaobo-image-bk.oss-cn-shanghai.aliyuncs.com/blog/go-blog/qrcode_for_gh_c30f7a9a484e_430.jpg)
相关文章
|
10天前
|
Go
go语言中的数据类型
go语言中的数据类型
11 0
|
16天前
|
Go 开发者
掌握Go语言:Go语言结构体,精准封装数据,高效管理实体对象(22)
掌握Go语言:Go语言结构体,精准封装数据,高效管理实体对象(22)
|
16天前
|
安全 Go
掌握Go语言:Go语言通道,并发编程的利器与应用实例(20)
掌握Go语言:Go语言通道,并发编程的利器与应用实例(20)
|
16天前
|
存储 缓存 安全
掌握Go语言:Go语言中的字典魔法,高效数据检索与应用实例解析(18)
掌握Go语言:Go语言中的字典魔法,高效数据检索与应用实例解析(18)
|
16天前
|
Go
使用Go语言发邮件
使用Go语言发邮件
20 2
|
28天前
|
缓存 安全 Java
Go语言小细节
Go语言小细节
36 0
|
1月前
|
存储 安全 Go
|
16天前
|
存储 安全 Go
掌握Go语言:Go语言类型转换,无缝处理数据类型、接口和自定义类型的转换细节解析(29)
掌握Go语言:Go语言类型转换,无缝处理数据类型、接口和自定义类型的转换细节解析(29)
|
1天前
|
前端开发 Java Go
开发语言详解(python、java、Go(Golong)。。。。)
开发语言详解(python、java、Go(Golong)。。。。)
|
10天前
|
存储 Java 编译器
go语言基础语法
go语言基础语法