Go入门篇:(一)golang的安装和编辑工具安装

简介: Go入门篇:(一)golang的安装和编辑工具安装

一、前言

最近我有幸接触到Go语言,深入了解后,发现go语言确实有很多让人惊叹的地方。作为一个有着多年Java编程经验的程序员,我深深地被它所吸引,并且决定记录下我的学习之路,以便与大家分享我的经验和感悟。与Java不同,Go语言的语法和运行效率都非常高,特别是对于并发编程的支持更是超乎我想象。如果你想要使用一种更快更高效的编程语言,并且想要在并发编程方面实现更好的性能,那么Go语言将会是你的不二之选。因此,我将我的Go语言学习之路记录下来,并与大家分享我的经验。我希望这些记录能够带给你启发和帮助,在学习Go语言的过程中更加轻松自如。

二、GO简介

Go(又称Golang)是Google开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言。Go语言是谷歌2009发布的第二款开源编程语言。Go语言专门针对多处理器系统应用程序的编程进行了优化,使用Go编译的程序可以媲美C或C++代码的速度,而且更加安全、支持并行进程。

三、Go的安装和开发工具安装

3.1 Go的安装

1、下载SDK包

  • Go语言的官网为:golang.org,因为各种原因,可能无法访问。
  • SDK下载地址:Go语言中文网:https://studygolang.com/dl

根据自己的操作系统下载对应的sdk版本即可。

2、安装及配置环境变量-windows/amd64设置环境变量

1)安装注意事项:安装包建议别安装在c盘,自己指定一个目录,如:F:\tools\Go(这个路径是安装自定义的路径),安装路径最好不要有中文或者特殊符号等

2)配置环境变量:在windows11下默认安装完go后,自动配置好环境变量,一般会在用户变量的中新建一个GOPATH的环境变量,如下:GOPATH --> C:\Users\User\go 在用户变量的path中会自动添加%USERPROFILE%\go\bin

其实这个自动配置的环境变量也是可以用的,但是依赖都放在C:\Users\User\go下,随着依赖越来越多,会占用C盘的空间。

3)调整如下:删除用户变量中的GOPATH --> C:\Users\User\go,以及path中的%USERPROFILE%\go\bin

在系统变量中path中删除F:\tools\Go(这个路径是安装自定义的路径) 在系统变量中新增GOROOT和GOPATH

GOROOT ---> F:\tools\Go(这个路径是安装自定义的路径)

GOAPTH ---> F:\go-workspace (自定义的路径) ,如下图所示:在系统变量的path中新增%GOROOT%\bin 和%GOPATH%\bin,如下图所示:

4)测试环境变量:

go version

环境变量设置成功。

5)go 代理设置:国内常用的GO代理如下:

goproxy

https://goproxy.io/zh/

七牛云

https://goproxy.cn

阿里云

https://mirrors.aliyun.com/goproxy/

设置代理Go 版本是 1.13 及以上


go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct

其他版本

export GO111MODULE=on
export GOPROXY=https://goproxy.cn

取消代理

go env -u GOPROXY

查看GO的配置

go env
//以JSON格式输出
go env -json

6)go 参数说明:

1.  go build : 编译当前目录或指定的Go文件,并生成可执行文件。 
 2.  go run : 编译并运行当前目录或指定的Go文件。 
 3.  go test : 运行当前目录或指定的Go测试文件,执行单元测试。 
 4.  go get : 下载并安装指定的包或依赖。 
 5.  go install : 编译并安装当前目录或指定的Go包或命令。 
 6.  go fmt : 格式化当前目录或指定的Go源码文件。 
 7.  go vet : 静态分析当前目录或指定的Go源码文件,检查潜在的错误。 
 8.  go mod init : 在当前目录初始化Go模块,创建go.mod文件。 
 9.  go mod tidy : 根据当前代码中的依赖关系,自动更新go.mod文件并移除不再使用的依赖。 
 10.  go mod vendor : 将依赖复制到项目的vendor目录下,用于离线构建。 
 11.  go mod download : 下载当前项目的所有依赖。 
 12.  go mod graph : 打印当前项目的依赖关系图。 
 13.  go mod edit : 编辑go.mod文件,手动添加、更新或删除依赖。 
 14.  go doc : 查看Go标准库或指定包的文档。

这些命令涵盖了Go开发中常用的编译、运行、测试、依赖管理和文档查看等方面。在实际开发中,根据具体需求和场景,可以使用这些命令来提高开发效率和管理项目。

3.2 开发工具选择

开发工具对于Go开发都非常重要,它们提供了丰富的功能和工具,帮助开发者编写、调试和管理Go代码。无论是专业开发者还是初学者,选择适合自己的开发工具都能提高开发效率和代码质量。

1、GoLand

GoLand是由JetBrains开发的强大集成开发环境(IDE),专为Go开发而设计。它提供智能代码补全、重构工具、调试功能和版本控制集成等功能,帮助开发者提高开发效率和代码质量。官方网站下载:https://www.jetbrains.com/go/

2、Visual Studio Code(VS Code)

VS Code是一款轻量级的代码编辑器,通过各种扩展支持Go开发。它提供语法高亮、代码导航、调试支持和与Git集成等功能,具有高度可定制性,适用于各种编程语言的开发。官方网站下载VS Code:https://code.visualstudio.com/

3、GoLand Lite

GoLand Lite是GoLand IDE的免费开源替代品。它提供了一个简化的开发体验,具备Go编程的基本功能。您可以从GitHub存储库下载GoLand Lite:https://github.com/go-lang-plugin-org/go-lang-idea-plugin

个人比较推荐GoLand,可能因为我是之前用IntelliJ-IDEA的缘故吧,其实VS Code也是个不错的选择。

四、Go的第一行代码

永远不变的"Hello,World!",用最简单的方式向Go世界宣告:“我来了!”

五、总结

学习Go语言是一个长期的过程,需要耐心和毅力。Go语言具有简洁、高效和易于学习的特点,但要掌握它的核心概念和特性需要时间和实践。学习任何一门技术都得上手去实践,千万不要眼高手低,要多加练习才能培养出代码感。要通过实际项目和练习来应用所学的知识,不断提升自己的编程能力。

相关文章
|
11月前
|
关系型数据库 Go 网络安全
go语言中PostgreSQL驱动安装
【11月更文挑战第2天】
455 5
|
7月前
|
Go 开发者
go-carbon v2.6.0 重大版本更新,轻量级、语义化、对开发者友好的 golang 时间处理库
carbon 是一个轻量级、语义化、对开发者友好的 Golang 时间处理库,提供了对时间穿越、时间差值、时间极值、时间判断、星座、星座、农历、儒略日 / 简化儒略日、波斯历 / 伊朗历的支持
120 3
|
8月前
|
监控 Linux PHP
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
199 20
|
8月前
|
算法 测试技术 Go
Go 1.24.0 重磅发布:新特性、新工具,开发者必看!
`Go 1.24.0` 已正式发布,带来诸多改进和新特性。语言层面上,泛型类型别名现已被完全支持;性能方面,通过优化 `map` 实现和内存分配,减少了 2-3% 的 CPU 开销;工具链新增模块工具依赖跟踪及测试分析器;标准库增加了弱引用包、FIPS 140-3 合规机制等;WebAssembly 支持也得到了增强。快来下载体验吧!
415 7
|
11月前
|
JSON Go 开发者
go-carbon v2.5.0 发布,轻量级、语义化、对开发者友好的 golang 时间处理库
carbon 是一个轻量级、语义化、对开发者友好的 Golang 时间处理库,提供了对时间穿越、时间差值、时间极值、时间判断、星座、星座、农历、儒略日 / 简化儒略日、波斯历 / 伊朗历的支持。
209 4
|
11月前
|
SQL 关系型数据库 MySQL
go语言中安装数据库驱动
【11月更文挑战第1天】
189 5
|
11月前
|
SQL 关系型数据库 MySQL
go语言数据库中mysql驱动安装
【11月更文挑战第2天】
320 4
|
11月前
|
存储 Cloud Native Shell
go库介绍:Golang中的Viper库
Viper 是 Golang 中的一个强大配置管理库,支持环境变量、命令行参数、远程配置等多种配置来源。本文详细介绍了 Viper 的核心特点、应用场景及使用方法,并通过示例展示了其强大功能。无论是简单的 CLI 工具还是复杂的分布式系统,Viper 都能提供优雅的配置管理方案。
263 6
|
11月前
|
Unix Linux Go
go进阶编程:Golang中的文件与文件夹操作指南
本文详细介绍了Golang中文件与文件夹的基本操作,包括读取、写入、创建、删除和遍历等。通过示例代码展示了如何使用`os`和`io/ioutil`包进行文件操作,并强调了错误处理、权限控制和路径问题的重要性。适合初学者和有经验的开发者参考。
181 4
|
11月前
|
JSON 监控 安全
go语言选择合适的工具和库
【10月更文挑战第17天】
138 2

推荐镜像

更多