一起来用GoLand开发第一个Go程序

 更新时间:2022年12月24日 13:49:49   作者:桌子椅子凳子。  
当您在编辑器中工作时GoLand 会分析您的代码,寻找优化方法,并检测潜在和实际问题,下面这篇文章主要给大家介绍了关于用GoLand开发第一个Go程序的相关资料,文中通过图文介绍的非常详细,需要的朋友可以参考下

前言

不同的人对于开发工具的习惯还是不一样的,所以博主还是决定,简单出一份关于 GoLand 的使用教程,方便于在开发过程中不同的开发习惯。

但是在此还是希望如果是刚刚入门的小白们,要明白的一点是无论是编程语言还是编程工具,他们都应该是处于一个可切换的状态,并不是一门语言和一个 IDE工具 就阻挡下你的脚步,加油!

1.关于GoLand的工具

GoLand 是一款由捷克软件开发公司 JetBrains 专为 Go 开发的跨平台的商业 IDE。Goland 具有 Strong Code Insight、Navigation & Search、Run & Debug、Integration with VCSs、More than just a Go IDE 以及较强的 Extensibility,能够帮助 Gopher 轻松愉悦方便快捷地 read 和 write Go code。

JetBrains 公司出品的 IDE,在业界有着良好的口碑,比如 CLion for C/C++、IntellijI IDEA for Java、PyCharm for Python、PhpStorm for PHP、WebStorm for JavaScript 等。Goland 一经推出,受到了广大 Gopher 的喜爱。(当然因为敏感的原因,本教程并不教学如何破解软件,请大家自行百度。也可以选择使用VSCode,如有能力则可以购买正式版)

在此附上 GoLand官方下载地址 点这里

1.1.安装过程

  • 没有什么特别复杂的操作,基本点击 下一步 即可
  • 可以根据自己的习惯将项目安装在自己想要的目录下,尽量不要出现 中文名文件夹路径
  • 根据自己的系统选择安装的型号如是64位系统在选项界面勾选 .64 和 .go 即可

1.2.安装完成

在安装完成后(当然你可以先免费用一个月),就可以看到这样的界面,就可以开始准备我们的 Go 之旅啦!

New Project: 表示新建一个项目

Open: 表示打开一个项目

Get from VCS: 表示从版本管理器中打开项目(SVN、Gitee、GitHub)

2.快速上手

2.1.创建项目

任何工具的第一步实际上都是要先学会如何创建一个项目,那么我们在使用GoLand也是一样,从创建一个项目开始。

选择我们的 New Project ,那么我们就会看到如下界面

0402

选择 Go 项目,如果选择带有 GOPATH 标记的则表示将项目默认创建在你配置好的 GOPATH 空间下(不懂 GOPATH 可以回看博主之前的文章)

在 GoLand 中,一个项目就可以作为一个工作空间,所以选择 Go 则表示要将这个新建的项目作为一个独立的工作空间进行开发

Location: 表示当前项目的位置

GOROOT: 表示你GO环境的开发包安装位置,这个如果在环境变量已经配置好的情况下会自动帮你填写,如果没配置建议先配置好环境变量。

Environment: Go 的一些 mod 可能需要外网下载,因为一些不可描述的原因我们无法访问,因此可以通过配置 GOPROXY 代理来改变代理成国内的下载代理,这个可以暂时先不配置。(想配置 GOPROXY 可以查看 VSCode 配置篇)

项目创建成功的界面

2.2.创建 .go 程序文件

在对项目新建做完基础讲解后,我们可以开始创建我们的新 .go 文件了

点击我们的项目 右键->New->Go File 选择创建一个简单的应用

0404

创建 Simple application 会得到一个带有简单 main 函数的文件,这是一个程序的入口

创建好的代码内容如下:

0405

2.3.配置 mod 的开启与关闭

在我们的本地环境中我们可以通过指令来配置 go mod 模块管理的开启与关闭,而在我们的 Goland 中我们也可以通过设置来改变 go mod 的启用,我们在使用 Goland 的时候可以开启 go mod

Preferences ->Go ->Go Modules 进行设置,如下:

关于代理: 因我我们众所周知一些原因,所以代理可以修改为国内,方便获取资源,留下以下几种资源地址

  • 注意:代理修改完,重启 GoLand 生效
  • 阿里云
    • https://mirrors.aliyun.com/goproxy/
  • nexus 社区提供的
    • https://gonexus.dev
  • goproxy.io 的
    • https://goproxy.io/
  • 官方提供的
    • https://proxy.golang.org
  • 七牛云赞助支持的
    • https://goproxy.cn

是否使用 go mod 的区别:

  • 开启mod:go env -w GO111MODULE=on ,会将包下载到 gopath 下的 pkg 下的 mod 文件夹中
  • 关闭mod:go env -w GO111MODULE=off ,会将包下载到 gopath 下的 src 下
  • go env GO111MODULE=auto 只有当前目录在 GOPATH/src 目录之外而且当前目录包含 go.mod 文件或者其子目录包含 go.mod文件才会启用

2.4.用 GoLand 写第一份代码

在刚刚我们已经新建了一个带有 main.go 文件,那么我们接下来就需要在 main() 中写下我们的第一份代码, Goland 是相对比较智能的,很多基础包不需要你去写 import ,你只需要直接写你要的工具模块,它就会自动帮你导入相关的模块。

因此你只需要在 main 中手动输入自己的第一份代码,即可!

fmt.Println("Hello Let's GO!") // 在终端打印

// 输入相关代码后Goland就会自动帮你导入`fmt`

点击运行按钮(在右上角有一个绿色的▶️)

0407

得到运行结果

0408

2.5.代码静态检测(此部分非必要)

我们之前有说过,Go 语言对于代码的检测和格式是有自己官方的统一规范和自动化的,所以就减少了出现不同程序不同的代码风格导致相互之间可阅读性降低的问题。

使用 GoLand 编写 Go 代码时,可以配合 gofmt + goimports + golangci-lint 在保存时完成对代码的格式化和质量检测。

开启 go fmt: 在每次保存代码文件时自动格式化代码。

File > Settings > Tools > File Watchers > + > go fmt

开启 goimports 在每次保存代码时自动添加缺失的和删除未引用的包。

File > Settings > Tools > File Watchers > + > goimports

如果遇到 tools 工具没安装, Goland 则会提醒你安装

0410

如果安装失败,则可能是国内代理的原因,请修改代理(这里不再重复赘述,可参考前一篇文章内容)

**开启 golandci-lint: ** 开启 golangci-lint 可以对代码进行静态检查,比如报告函数行数超标、文件行数超标等来帮助规范代码

File > Settings > Tools > File Watchers > + > golangci-lint

至此,工具安装完成!

3.GoLand常用快捷键

文件相关快捷键:

  • CTRL + E: 打开最近浏览过的文件
  • CTRL + SHIFT + E: 打开最近修改的文件
  • CTRL + N: 可以快速打开struct结构体
  • CTRL + SHIFT + N: 可以快速打开文件

代码格式化

  • CTRL + ALT + T: 可以把代码包在一个快哪,例如 if {…} else {…}
  • CTRL + ALT + L: 格式化代码
  • CTRL + SPACE: 代码提示
  • CTRL + /: 单行注释。CTRL+SHIFT+/:多行注释
  • CTRL + B: 快速打开光标处的结构体或者方法
  • CTRL + " + / - ": 可以将当前方法进行展开或折叠

查找和定位

  • CTRL + R:替换文本
  • CTRL + F:查找文本
  • CTRL + SHIFT + F:进行全局查找
  • CTRL + G: 快速定位到某行

代码常用

  • ALT + Q: 可以看到当前方法的声明。
  • SHIFT + ENTER: 可以向下插入新行。即使光标在当前行的中间
  • CTRL + Backspace: 按单词进行删除或删除光标所在行
  • CTRL + X剪切当前光标所在行
  • CTRL + D:复制当前光标所在行。
  • ALT + SHIFT+UP/DOWN:可以将光标所在行的代码上下移动。
  • CTRL + SHIFT+U:可以将选中内容进行大小写转化。

写在最后

本文主要是教学基本的 GoLand 使用,以及如何使用该工具开发第一个Go程序,以上为个人分享,如有问题请指正!(还是提醒各位入门的同好们,工具无论是GoLand或是VSCode并没有绝对的高下之分)

到此这篇关于用GoLand开发第一个Go程序的文章就介绍到这了,更多相关GoLand开发Go程序内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 一文详细谈谈GoLang的panic和error

    一文详细谈谈GoLang的panic和error

    说是初识,并不是说第一次使用error和panic包,而是第一次特地去了解golang中的这两个机制,下面这篇文章主要给大家介绍了关于如何通过一文详细谈谈GoLang中panic和error的相关资料,需要的朋友可以参考下
    2022-12-12
  • golang数组-----寻找数组中缺失的整数方法

    golang数组-----寻找数组中缺失的整数方法

    这篇文章主要介绍了golang数组-----寻找数组中缺失的整数方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12
  • Golang 中的 strconv 包常用函数及用法详解

    Golang 中的 strconv 包常用函数及用法详解

    strconv是Golang中一个非常常用的包,主要用于字符串和基本数据类型之间的相互转换,这篇文章主要介绍了Golang中的strconv包,需要的朋友可以参考下
    2023-06-06
  • golang jwt+token验证的实现

    golang jwt+token验证的实现

    这篇文章主要介绍了golang jwt+token验证的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-10-10
  • 解析Go 中的 rune 类型

    解析Go 中的 rune 类型

    rune类型是 Go 语言的一种特殊数字类型,Go 语言通过rune处理中文,支持国际化多语言,本文给大家介绍Go 中的 rune 类型,感兴趣的朋友一起看看吧
    2022-03-03
  • go代码实现买房贷款月供计算的方法

    go代码实现买房贷款月供计算的方法

    今天小编就为大家分享一篇关于go代码实现买房贷款月供计算的方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-04-04
  • Go标准库日志打印及同时输出到控制台与文件

    Go标准库日志打印及同时输出到控制台与文件

    Go语言内置的log包实现了简单的日志服务,下面这篇文章主要给大家介绍了关于Go标准库日志打印及同时输出到控制台与文件的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-11-11
  • MacOS下本地golang环境搭建详细教程

    MacOS下本地golang环境搭建详细教程

    这篇文章主要介绍了MacOS下本地golang环境搭建详细教程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-09-09
  • Go语言单元测试超详细解析

    Go语言单元测试超详细解析

    本文介绍了了Go语言单元测试超详细解析,测试函数分为函数的基本测试、函数的组测试、函数的子测试,进行基准测试时往往是对函数的算法进行测验,有时后一个算法在测试数据的基量不同时测试出的效果会不同我们需要对不同数量级的样本进行测试,下文需要的朋友可以参考下
    2022-02-02
  • GO的锁和原子操作的示例详解

    GO的锁和原子操作的示例详解

    这篇文章主要为大家详细介绍了Go语言中锁和原子操作的相关资料,文中的示例代码讲解详细,对我们学习Go语言有一定的帮助,需要的可以参考一下
    2023-02-02

最新评论