go基础编程(一):第一个go程序-hello word

大漠路人 · · 672 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

环境搭建

环境搭建是在deepin操作系统上进行

1. 下载go安装程序

wget https://golang.org/dl/go1.16.linux-amd64.tar.gz

以上是下载go1.16的版本,如需其他版本,轻移步官网下载。

2. 解压程序包到指定目录

tar -C /usr/local -xzf go1.16.linux-amd64.tar.gz

3. 添加环境变量

linux 操作系统可将环境变量添加到$HOME/.profile文件 或 /etc/profile文件中,具体配置如下:

export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export GOBIN=$GOPATH/bin
export GO111MODULE=on
export GOPROXY=https://goproxy.io
export PATH=$PATH:$GOROOT/bin

以上环境变量解释:

  • GOROOT: go的安装路径
  • GOPATH: 开发时的工作目录
  • GOBIN: 表示编译器和链接器的安装位置
  • GO111MODULE: go版本管理工具,有三个可选值:off|on|auto,默认值是 auto。1.11版本前,想要对go语言包进行管理只能依赖第三方库实现(比如:Vendor,GoVendor,GoDep等)

    • GO111MODULE=off 无模块支持,go 会从 GOPATH 和 vendor 文件夹寻找包。
    • GO111MODULE=on 模块支持,go 会忽略 GOPATH 和 vendor 文件夹,只根据 go.mod 下载依赖。
    • GO111MODULE=auto 在 $GOPATH/src 外面且根目录有 go.mod 文件时,开启模块支持。
  • GOPROXY: 控制Go Module下载的来源,有助于确保构建的确定性和安全性。

4. 构建GOPATH目录下所需目录

在GOPATH所在目录新建三个目录:

mkdir $GOPATH/src
mkdir $GOPATH/bin
mkdir $GOPATH/pkg
  • src目录:用来存放编译后的可执行文件
  • bin目录:存放编译后生成的归档文件
  • pkg目录:存放go源码文件(就是编写的go代码文件)

5. 执行命令查看go是否安装成功

go version

第一个程序 hello word

在GOPATH下的src目录下编写一个文件名为main.go,内容如下的的一个文件

package main

import "fmt"

func main() {  
    fmt.Println("Hello World")
} 

执行命令行:

go run main.go

执行结果:

Hello World

关于hello world程序中代码语句的解释:

  • package xx: 指定包名为xx,
  • import xx : 引入要使用的包,先引入后使用
  • func main(): func标记函数开始,main是函数名,main包中的main的函数是一个特殊函数,一切都是从这开始执行。
  • fmt.Println: 对fmt包中的Println进行调用。

了解go常用的一些命令

  • go run xx.go: 编译并直接运行程序,它会产生一个临时可执行文件。
  • go build xx.go: 用于测试编译包,对 库源码文件 go build, 不会产生文件, 只是测试编译包是否有问题; 对命令源码文件 go build, 会在当前执行 go build 命令的目录下产生可执行文件
  • go install xx.go: 编译并安装,编译的中间文件放在 GOPATH 的 pkg 目录下,将编译结果放在 GOPATH 的 bin 目录下。
  • go fmt xx.go: 格式化指定go文件的代码格式。
  • go get xxx: 一键获取代码、编译并安装。

欢迎关注我的公众号“晓冬编程”,原创技术文章第一时间推送。
image


有疑问加站长微信联系(非本文作者)

本文来自:Segmentfault

感谢作者:大漠路人

查看原文:go基础编程(一):第一个go程序-hello word

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

672 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传