go语言环境要这样搭建才省钱

本篇概要

搭建go语言环境,除了要搭建go语言的编译环境,还要搭建go语言的集成开发环境,为此需要选择go语言的集成开发环境的工具,这就是“工于善其事,必先利其器”,可以大大加快自己的开发进度。

集成开发环境工具(ide)

这里我主要介绍从我2016年开始学习go语言以来使用过的go语言的所有集成开发环境工具,如果你对这段没有兴趣,可以直接跳过。

Goland或IntelliJ IDEA

这是我较早使用的集成开发环境工具,Goland或IntelliJ IDEA等JetBrains产品是非常优秀的go语言集成开发环境工具,其中IntelliJ IDEA更是一个几乎所有主流语言的集成开发环境工具。

Goland或IntelliJ IDEA是目前我用过的最好的go语言集成开发环境,它比其他开发环境优秀的地方是对于go语言接口的完美支持。它不仅可以快速检索哪些go语言的机构体实现了一个go语言接口,而且能快速检索一个go语言的机构体是否实现某个go语言接口,而其他集成开发环境并不能完美做到这一点(事实上这点很重要,go语言是面向接口的,而且是隐式的)。如果你是一个初学go语言的开发者,我强烈推荐你使用这个集成开发环境工具!另外,它配置非常简单,对新进的开发者也极其友好,你肯定会喜欢上它的开发环境和插件。

但是这个工具的唯一缺点就是每年需要你投入一定的资金(现在第一年US $99.00)购买许可证,当然每年的许可费用会越来越便宜,另外如果你是学生,可以免费白嫖这个工具。

Visual Studio Code

Visual Studio Code简称vscode,这是我现在使用的集成开发环境,而且是虽然它不如Goland或IntelliJ IDEA,但是它支持go语言google开发团队开发的官方语言服务器gopls,在go语言1.13时代之后官方语言服务器gopls已经逐步替代了许多其他的go语言工具,另外我觉得Visual Studio Code是目前免费go语言集成开发工具做的最好的,由于它对官方语言服务器的支持,为此Visual Studio Code在go语言编程时支持go mod依赖,代码补全,语义检查等等方面支持都很好。

其他集成开发环境

其他的我还使用过的ide工具,如[sublime text 3](sublime text 3)以及LiteIDE,就不详细介绍了。

另外,还有我没使用过但听过的go语言集成开发环境,Eclipse,Atom,Emacs。

Visual Studio Code的go语言开发环境搭建

这里主要介绍了windows操作系统的搭建

Visual Studio Code安装

可以从官网下载Visual Studio Code注意:下载可能会很慢

按照指引,点击下一步

注意选择以上并且不断点击下一步即可完成安装

go编译环境安装

go安装软件官网下载合适的go编译环境,例如本次我下载的版本是go1.20.7.windows-amd64.msi,需要注意的是go语言的镜像官网不仅仅提供下载,请好好探索一下它,后面的篇章中我还会详细提及它的强大作用。

同意协议后,选择安装路径,请记住这个路径,然后按next完成安装

配置go环境变量

右击电脑,点击属性后出现以下页面

点击高级选项,如下点击

如下点击新建环境变量

  1. 变量名:GOROOT 变量值:E:\lang\go ,这是go语言的编译环境安装目录,如上所示。
  2. 变量名:GO11MODULE 变量值:on,这是go语言的第三方模块依赖的。
  3. 变量名:GOPROXY 变量名:https://goproxy.cn,direct , 这是go语言的代理,用于能够正常访问一些Google的go语言的资源。
  4. 变量名:GOPATH 变量名:E:\projects 这是go语言的项目位置。

如下图将%GOROOT%\bin加入path

之后不断确认你打开的所有窗口,建议重启后,使用win+R打开cmd输入以下命令检查是否正常安装

go version
go version go1.20.7 windows/amd64

安装go语言插件

在vscode插件市场选择go语言

安装完后选择编辑go语言插件配置

直接在json文件中编辑

如下:

{
"go.gopath": "E:\projects"
}

在E:\projects下建立如下文件夹bin,pkg, src

-----+---bin
+---pkg
+---src

安装go语言插件的依赖软件,使用Ctil+Shift+P

选择安装所有插件

以下是安装完的场景

使用golang编程

在E:\projects\src下建立如下文件github.com/Breeze0806/test/main.go

-----+--bin
+--pkg
+--src--+--github.com--+--Breeze0806--+--test--+--main.go--

在main.go中写入以下程序

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

使用go mod 命令建立项目

go mod init github.com/Breeze0806/test
go mod tidy
go run main.go

如图test目录下多了go.mod,输出结果为Hello

本篇小结

本篇讨论了go语言的当前所有的集成开发环境,并且介绍了Visual Studio Code的windows操作系统下的go语言开发环境搭建,那么其他操作系统有没有办法搭建?有的,由于楼主使用的windows系统,其实unbuntu或者macos的搭建方式类似。

本篇小结

本篇讨论了go语言的当前所有的集成开发环境,并且介绍了Visual Studio Code的windows操作系统下的go语言开发环境搭建,那么其他操作系统有没有办法搭建?有的,由于楼主使用的windows系统,其实unbuntu或者macos的搭建方式类似,

下篇预告

《go语言的数据类型那点事》

go语言环境要这样搭建才"省钱"的更多相关文章

  1. Windows下使用Visual Studio Code搭建Go语言环境

    1.安装GO语言   下载地址:    https://golang.org/dl/   Windows下直接运行安装GO语言即可.     安装成功.   安装完毕GO语言后,需要添加GOPATH环 ...

  2. 嵌入式学习-c语言篇01:搭建C语言环境

    使用NotePad++和gcc编译器来搭建c语言环境 NotePad++:C语言编码器 gcc:C语言编译器 这两个软甲可以去官网下载 下载好进入该文件夹,如图: 添加环境变量:直接cmd,运行gcc ...

  3. go语言环境搭建+sublime text3(windows环境下)

    感觉有点坑,整了一下午~搞定 go语言环境搭建+sublime text3(windows环境下) 1.安装sublime text3 2.安装go语言程序包 3.测试go语言是否安装成功     键 ...

  4. 从小白到区块链工程师:第一阶段:Go语言环境的搭建(1)

    一,Golang语言简介 2009年由谷歌公司推出,由C语言之父Ken Thompson主导研发.Go(又称Golang)是Google开发的一种静态强类型.编译型.并发型,并具有垃圾回收功能的编程语 ...

  5. Mac下R语言环境搭建

    Mac下R语言环境搭建 博主在数据分析的时候一直用的python(MATLAB太重了),最近跟其他搞学术的人合作,需要用一下R语言,所以也打算顺便学习一下R. R语言简介 R语言是用于统计分析,图形表 ...

  6. Mac搭建C语言环境

    Mac搭建C语言环境 创建一个工程目录 /Users/chennan/cproject 配置sublime运行环境 打开sublime text3,通过下面的步骤一次点击 Tools(工具)-> ...

  7. 浅谈Java语言环境搭建-JDK8

    title: 浅谈Java语言环境搭建-JDK8 blog: CSDN data: Java学习路线及视频 1.What's the JDK,JRE JDK(Java Development Kit ...

  8. Kali Linux搭建Go语言环境

     准备: (1)Kali Linux系统(此实验为VMware环境) (2)Go语言安装包 具体过程: (1)到官网下载Go语言安装包,如图示操作(官网可能需要梯子,没有的可以从国内相关网站下载) ( ...

  9. 【Cocos2d-X开发学习笔记】第01期:PC开发环境的详细搭建

    本文使用的是cocos2d-x-2.1.4版本 ,截至目前为止是最新稳定版 所谓的开发环境就是制作游戏的地方,打个比方读者就会十分清楚了.比如提到做饭,人们都会想到厨房.这是 因为厨房有炉灶.烟机.水 ...

  10. 龙芯GO!龙芯平台上构建Go语言环境指南

    龙芯软件生态系列——龙芯GO!龙芯平台上构建Go语言环境指南2016-07-05 龙芯中科1初识Go语言Go语言是Google公司于2009年正式推出的一款开源的编程语言,是由Robert Gries ...

随机推荐

  1. 2023-04-16:给定一个长度为N的数组,值一定在0~N-1范围,且每个值不重复 比如,arr = [4, 2, 0, 3, 1] 0 1 2 3 4 把0想象成洞

    2023-04-16:给定一个长度为N的数组,值一定在0~N-1范围,且每个值不重复 比如,arr = [4, 2, 0, 3, 1] 0 1 2 3 4 把0想象成洞,任何非0数字都可以来到这个洞里 ...

  2. 在Centos7上安装PXE装机环境来批量安装操作系统

    步骤 1:安装必要的软件包 首先,需要确保系统已安装 dhcp.tftp-server 和 httpd 等软件包.可以使用以下命令进行安装: yum install -y dhcp tftp-serv ...

  3. AcWing 3956. 截断数组

    给定一个长度为 n 的数组 a1,a2,-,an. 现在,要将该数组从中间截断,得到三个非空子数组. 要求,三个子数组内各元素之和都相等. 请问,共有多少种不同的截断方法? 输入格式 第一行包含整数 ...

  4. springboot 整合druid和mybatis

    Shrio+Mybatis+Druid 1.导入相关依赖包 2.在配置文件配置数据源 3.pojo对应实体类和mapper目录下的接口UserMapper (3.使用注解版) package com. ...

  5. Microsoft R 和 Open Source R,哪一个才最适合你?

    由于微信不允许外部链接,你需要点击文章尾部左下角的 "阅读原文",才能访问文中链接. R 是一个开源统计软件,在分析领域普及的非常快. 在过去几年中,无论业务规模如何,很多公司都采 ...

  6. ChatGPT在工业领域的研究与应用探索-AI助手实验应用

    为什么我的工作效率和质量要比其他人要高,因为我的电脑里有代码库.产品库.方案库.自己工作经验资料库等,根据一个应用场景或需求能够很快关联到想要的资料,并且整合成新的方案.我的核心竞争力是什么?各种资料 ...

  7. [AGC055A] ABC Identity 题解

    [AGC055A] ABC Identity 题解 题目描述 给定长度为 \(3n (1 \le n \le 2e5)\) 的序列,其中字母 A,B,C 各有 \(n\) 个. 一个合法序列 \(T\ ...

  8. memcached使用中踩的一些坑

    背景 线上启用memcached(以下简称mc)作为热点缓存组件已经多年,其稳定性和性能都经历住了考验,这里记录一下踩过的几个坑. 大key存储 某年某月某日,观察mysql的读库CPU占比有些异常偏 ...

  9. Java并发(十二)----线程应用之多线程解决烧水泡茶问题

    1.背景 统筹方法,是一种安排工作进程的数学方法.它的实用范围极广泛,在企业管理和基本建设中,以及关系复杂的科研项目的组织与管理中,都可以应用. 怎样应用呢?主要是把工序安排好. 比如,想泡壶茶喝.当 ...

  10. 1、笔记本刷ubuntu,安装饥荒服务器

    目录 笔记本刷ubuntu,安装饥荒服务器 一.准备 二.笔记本刷机 1.制作Ubuntu server U盘启动盘 2.刷机 3.设置电源不休眠 三.安装饥荒服务器 四.最后说下网络 笔记本刷ubu ...