广州网站建设腾虎,许昌哪个网站做苗木,免费 网站建设,上传网站标志前面几周陆陆续续写了一些后端技术的文章#xff0c;包括数据库、微服务、内存管理等等#xff0c;我比较倾向于成体系的学习#xff0c;所以数据库和微服务还有后续系列文章补充。最近工作上比较多的 Golang 编程#xff0c;现在很多互联网公司都在转向 Golang 开发#…前面几周陆陆续续写了一些后端技术的文章包括数据库、微服务、内存管理等等我比较倾向于成体系的学习所以数据库和微服务还有后续系列文章补充。最近工作上比较多的 Golang 编程现在很多互联网公司都在转向 Golang 开发所以打算写一写有关 Go 语言学习的系列文章目标是从 Go 基础到进阶输出一系列文章沉淀下这些知识同时也给大家做参考力求做到通俗易懂即使你是 Golang 小白也能看懂如果你是老手也能温故知新。本文将要和你分享 linux 下安装 Golang 环境并且讲解如何通过配置 VSCode 远程开发调试 Golang 程序。下载源码你可以用系统自带的包管理工具比如 yum 或 apt-get 来安装Golang开发环境。不过为了通用性我选择通过源码的方式来安装和讲解在官网下载源码下载地址 https://golang.org/dl/手动安装解压安装我这里下载下来的源码包 go1.14.2.linux-amd64.tar.gz 放到远程 Linux 服务器目录下。执行以下命令安装到 /usr/local 目录。tar -zxvf -C /usr/local/ go1.14.2.linux-amd64.tar.gz创建工作空间工作空间是你Go项目的「工作目录」挑选一个合适目录执行下面操作mkdir GoPath
mkdir -p GoPath/src
mkdir -p GoPath/bin
mkdir -p GoPath/pkg
三个目录含义 src: 源码路径例如.go、.c、.h、.s 等pkg: 编译包时生成的.a文件存放路径bin: 编译生成的可执行文件路径
配置环境变量安装过程中有这么几个环境变量需要配置先来了解一下GOROOTGo的安装路径也就是前面我们解压到的目录 /usr/local/go。GOBINGo项目的二进制文件存放目录。GOPATHGo的工作空间。前面有介绍的工作空间目录。在 /etc/profile 文件追加以下内容完成设置。export GOROOT/usr/local/go
export GOPATH/yourpath/GoPath # 设置你自己的GoPath路径
export GOBIN$GOPATH/bin
export PATH$PATH:$GOROOT/bin # 加入到PATH环境变量
export PATH$PATH:$GOPATH/bin# source /etc/profile #立即生效
验证安装# go version #检查版本
# go version go1.14.2 linux/amd64 # 输出版本号
如果看到版本信息就代表安装成功了远程开发上面我们在 Linux 环境下安装好了 Golang 开发环境但我不想每次打开终端登录服务器编写调试程序怎么才能在本地PC开发调试Golang程序呢看过我上一篇Vscode远程开发的小伙伴应该能想到方法我们就要用Vscode搭建Golang远程开发环境。具体的远程开发配置可以查看我的另一篇文章。Golang开发插件首先安装官方推荐的 Go 开发插件如下点他安装。接着还会出现如下的提示是因为缺少其他 Go 开发相关插件点 install all 全都装上就行。Hello World编程界有个惯例什么语言开始学习都是从 Hello World 开始。现在我们就用 Golang 编写第一个 HelloWorld 程序吧。上代码package main // 所有Go程序从main包开始运行import fmt // 导入fmt包func main() {fmt.Print(hello world, i am ready to go :)n)fmt.Println(hello world, i am ready to go :))
}
格式化 包fmt 实现了类似 C/C 语言的格式IO库功能。Print 和 Println 都可用于打印输出但是功能略有不同。可以看到我在Print 函数中对后一个字符串加了空格和换行符这样两个打印出来的结果是相同的。Printfunc Print(a ...interface{}) (n int, err error)Print采用默认格式将其参数格式化并写入标准输出。如果两个相邻的参数都不是字符串会在它们的输出之间添加空格。返回写入的字节数和遇到的任何错误。Printlnfunc Println(a ...interface{}) (n int, err error)Println采用默认格式将其参数格式化并写入标准输出。总是会在相邻参数的输出之间添加空格并在输出结束后添加换行符。返回写入的字节数和遇到的任何错误。调试终端调试在终端命令行源码所在目录输入go run 运行程序。# go run HelloWorld.go
//输出
hello world i am ready to go :)
hello world i am ready to go :)
也可以先编译go build 得到可执行文件后再运行。# go build HelloWorld.go
# ls
HelloWorld HelloWorld.go
# ./HelloWorld
hello world i am ready to go :)
hello world i am ready to go :)
Vscode调试按F5启动调试编辑与调试控制台输出如下命令行参数获取命令行参数可以通过os 包的 Args 函数获取代码如下package mainimport (fmtosstrconv
)func main() {// 命令行参数获取os.Args第一个参数是程序自身fmt.Println(os.Args)for idx, args : range os.Args {fmt.Println(参数strconv.Itoa(idx):, args)}
}
终端设置以下是带参数argv1 argv2 运行golang程序和输出。# go run basic.go argv1 argv2 # 输出
[/tmp/go-build441686724/b001/exe/basic argv1 argv2]
参数0: /tmp/go-build441686724/b001/exe/basic
参数1: argv1
参数2: argv2
VSCode设置launch.json文件的 args 属性配置可以设置程序启动调试的参数。设置之后按F5 启动调试就会在调试控制台输出配置的参数。环境变量获取命令行参数可以通过os 包的 Getenv 函数获取代码如下package mainimport (fmtos
)func main() {// 获取环境变量fmt.Println(os.Getenv(type), os.Getenv(name), os.Getenv(GOROOT))
}VSCode设置环境变量launch.json 文件的 args 属性配置可以设置 VSCode 调试的 Golang 程序环境变量。设置的格式是name:vaule 形式注意都是字符串。终端设置环境变量终端的环境变量设置就是可以用 Linux 的 export 命令设置之后就可以用 os.Getenv 函数读取。比如我们最初设置 GOROOT 环境变量的命令export GOROOT/usr/local/go就可以用 os.Getenv(GOROOT) 读取比较简单这里就不多说了。总结现在你有了一个可以远程开发调试 Golang 的环境赶紧去写个 hello world 体验一下吧今天的分享就到这下一篇文章讲解基础语法。老规矩感谢各位的阅读文章的目的是分享对知识的理解技术类文章我都会反复求证以求最大程度保证准确性若文中出现明显纰漏也欢迎指出我们一起在探讨中学习。今天的技术分享就到这里我们下期再见。原创不易看到这里如果在我这有一点点收获就动动手指「转发」和「在看」是对我持续创作的最大支持。