1.安装环境

  1. 进入Golang官网,进入下载页面。

    (如果打不开可访问Golang中国,或者Golang中文版,或者百度网盘,提取码:wfw5)

  1. 根据实际需求选择版本进行下载。

  1. 运行下载好的MSI安装程序包进行安装,一路next下去,即可完成安装。

    默认安装路径是C:\Go,如有需要可以更改。

  2. 右键我的电脑$\rightarrow$属性$\rightarrow$高级系统设置$\rightarrow$环境变量$\rightarrow$系统变量$\rightarrow$新建系统变量GOROOT,值为你的安装路径,比如C:\Go

  3. 右键我的电脑$\rightarrow$属性$\rightarrow$高级系统设置$\rightarrow$环境变量$\rightarrow$双击打开系统变量中的Path变量

​ 可以看到安装程序自动添加了golang的环境变量:你的Go安装目录下的bin目录。

  1. 测试环境是否安装成功。

    1. win+R打开命令行工具,输入go,回车,可以看到Usage信息:

    1. 输入cd %GOROOT%,回车,可以进入Go的安装目录:

2. 第一个Go程序——HelloWorld

和学其他语言时一样,不管三七二十一,先把HelloWorld输出到屏幕上。

  1. 在任意位置(比如桌面),用记事本新建一个HelloWorld.go文件,编辑如下内容并保存:

    package main
    
    import "fmt"
    
    func main() {
    fmt.Printf("hello, world\n")
    }
  2. 调出CMD命令行工具,找到HelloWorld.go文件所在目录,并运行go build HelloWorld.go。该命令会在HelloWorld.go文件所在目录下生成一个同名的HelloWorld.exe可执行文件。

  3. 执行文件名HelloWorld即可输出hello, world字符串。

虽然看不太懂上面几行代码是什么,但是现在我们已经成功运行了第一个Go程序。现在还算不上是入门,但起码我们找到了“门”在哪里。

3. 安装工具

工欲善其事必先利其器。在1.2.节中已经用记事本写了HelloWorld,虽然没几行,但是仍然能感觉到麻烦。一个好的工具能帮我们更方便、舒服地写代码。下面介绍两种。

3.1. GoLand

Goland是JetBrains旗下的Go语言开发工具,有30天试用期。下载Goland安装后无需做过多配置。

3.2. VSCode

  1. 下载VScode并安装VSCode

  2. 安装中文插件

  1. 下载并安装Go插件

建议花点时间阅读Go for Visual Studio Code。

  1. 在电脑的任意位置新建一个文件夹,用来存放你的go代码。比如D:\Work\Program\go。

  2. 打开VSCode$\rightarrow$文件$\rightarrow$打开文件夹$\rightarrow$选择新建的go文件夹打开。

  1. 打开go文件夹后,在该文件夹下新建一个HelloWorld.go文件。

  2. 新建完成后,在该文件中写如下代码:

    package main
    
    import "fmt"
    
    func main() {
    fmt.Println("Hello, World!")
    }

    保存,建议设置自动保存:文件$\rightarrow$自动保存

  3. 在vscode中调出终端即可运行命令。

如有错误,还请指正

文章首发于公众号『行人观学』

Go的安装和使用的更多相关文章

  1. docker——容器安装tomcat

    写在前面: 继续docker的学习,学习了docker的基本常用命令之后,我在docker上安装jdk,tomcat两个基本的java web工具,这里对操作流程记录一下. 软件准备: 1.jdk-7 ...

  2. 网络原因导致 npm 软件包 node-sass / gulp-sass 安装失败的处理办法

    如果你正在构建一个基于 gulp 的前端自动化开发环境,那么极有可能会用到 gulp-sass ,由于网络原因你可能会安装失败,因为安装过程中部分细节会到亚马逊云服务器上获取文件.本文主要讨论在不变更 ...

  3. Sublime Text3安装JsHint

    介绍 Sublime Text3使用jshint依赖Nodejs,SublimeLinter和Sublimelinter-jshint. NodeJs的安装省略. 安装SublimeLinter Su ...

  4. Fabio 安装和简单使用

    Fabio(Go 语言):https://github.com/eBay/fabio Fabio 是一个快速.现代.zero-conf 负载均衡 HTTP(S) 路由器,用于部署 Consul 管理的 ...

  5. gentoo 安装

    加载完光驱后 1进行ping命令查看网络是否通畅 2设置硬盘的标识为GPT(主要用于64位且启动模式为UEFI,还有一个是MBR,主要用于32位且启动模式为bois) parted -a optima ...

  6. Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级

    Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 5.安装Database软件 5. ...

  7. Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作

    Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 1.实施前准备工作 1.1 服务器安装操 ...

  8. 【原】nodejs全局安装和本地安装的区别

    来微信支付有2年多了,从2年前的互联网模式转变为O2O模式,主要的场景是跟线下的商户去打交道,不像以往的互联网模式,有产品经理提需求,我们帮忙去解决问题. 转型后是这样的,团队成员更多需要去寻找业务的 ...

  9. tLinux 2.2下安装Mono 4.8

    Tlinux2.2发行版基于CentOS 7.2.1511研发而成,内核版本与Tlinux2.0发行版保持完全一致,更加稳定,并保持对Tlinux2.0的完全兼容.Mono 4版本要求CentOS 7 ...

  10. 工欲善其事,必先利其器 之 VS2013全攻略(安装,技巧,快捷键,插件)!

    如有需要WPF工具的朋友可以移步 工欲善其事,必先利其器 之 WPF篇: 随着开发轨迹来看高效WPF开发的工具和技巧 之前一篇<c++的性能, c#的产能?!鱼和熊掌可以兼得,.NET NATI ...

随机推荐

  1. 02.Scrapy-Demo

    Scrapy入门实战 采集目标:采集西祠网的IP代理 包括 IP PORT 1. 新建项目 scrapy startproject xicidailiSpider # scrapy 新建项目 项目名 ...

  2. php计算两个时间段内的 工作日 工作小时

    <?php class WorkTime { // 定义工作日 [1, 2, 3, 4, 5, 6, 0] public $week_workingday = [1, 2, 3, 4, 5]; ...

  3. python高级-闭包-装饰器

    闭包内容: 匿名函数:能够完成简单的功能,传递这个函数的引用,只有功能 普通函数:能够完成复杂的功能,传递这个函数的引用,只有功能 闭包:能够完成较为复杂的功能,传递这个闭包中的函数以及数据,因此传递 ...

  4. .net Core中如何读取Appsetting配置文件

    现在APPSetting下面配置以下节点 { "Logging": { "IncludeScopes": false, "LogLevel" ...

  5. Linux distributions 发布网站

    Red Hat: http://www.redhat.com SuSE: https://www.suse.com Fedora: https://getfedora.org/ CentOS: htt ...

  6. ADAS感知设计

    ADAS传感器融合 0.传感器标定 首先标定传感器.一般可以精度高的传感标定用精度低一个数量级的传感器,如用激光雷达标定毫米波雷达. 毫米波雷达标定:可以采用激光雷达对毫米波雷达进行标定.选取一个纹理 ...

  7. 一周学会linux实战笔记

    山篇 思考------实践-------再思考-------再实践 1.高效愉快地学习 2.先建立一个整体框架,然后细节 3.用的什么再学习什么 4.先know how,再know why 5.计算机 ...

  8. nodejs gulp如何获取参数

    比如执行gulp test 如果需要获取test,使用命令process.argv即可 如果执行gulp test --module aaaa,这句话表示的意思执行gulp test,顺带参数modu ...

  9. Java数组的定义与使用

    一.数组概念 可以将多个同一数据类型的数据,存储到同一个容器中 1. 格式 数据类型[] 数组名=new 数据类型[元素个数] "数据类型"表示该数组中可以存放哪一类型的数据 &q ...

  10. 汉王JAVA笔试题

    汉王JAVA笔试题 1,jsp中动态include与静态include的区别? (1)动态包含总是会检查文件中的变化,适合用于包含动态页面,并且可以带参数. (2)静态包含不会检查所含文件的变化,适用 ...