复利青年编程记:golang开发环境设置,还是得去了解底层逻辑

项目场景:

golang windows的开发环境设置,给那些就不想把工作路径放C盘的朋友们。我就不明白了,你们都没有C盘强迫症吗?C盘存储进度条超过一半就不会焦虑吗?有钱佬别和我说这些,你几T的C盘,我不想比,比不过,我就想把工作路径存储在其他盘,就那么难吗?

问题描述:

提示:这里描述项目中遇到的问题:

他奶奶的棒槌,开发环境真就是新手村boss了,说简单,每一门语言的开发环境设置都有前辈事无巨细的教程配置,照着过基本都可以过,回想起自己前几次尝试学习变成失败,最后都是停在新手关boss了,编程的开发环境设置像是黑魂类游戏,斗地主上来就王炸。


原因分析:

大部分新手朋友过不了开发环境设置,主要是卡在网络上的教程路径不对,或者说目的不对,至少对我而言目的不对,如果是最快速开发入门,当然想要的是一个不需要理解,照做就能设置好开发环境的教程,但是那走不远啊朋友们,其实了解后也不算什么困难的知识,但就是比较少人这样做而已,以及处在那些教程的新手们想得都是明明我都按教程做了,最后还跑不起来,多次尝试后无果后,自然会想放弃,包括我这次设置开发环境,屡试无果后,还跑不起来,确实又有这样的放弃念头出现了,好在已经放弃过很多次了,及时意识到了这点,在破罐子破摔的那一刻,调用出了自己的第一性原理,耐心地去了解了一下原理,把问题解决了。


解决方案:

计算机是虚拟游戏里的妹子,是galgame,是输入固定选项,执行正确操作就能得到正确反馈的妹子,这点确定性让人很有安全感,不要因为自己的操作得不到正确结果而气馁,但也不要老是重复一些错误的操作却期望得到一个正确的结果,后者自然只能影分身之术气自己-气不打一处来。

首先是网络已有的轮子,我就不重复了,这里推荐李文周老师的博客,多个操作系统都算事无巨细了,直接抄作业也无妨

从零开始搭建Go语言开发环境

还有个2017年旧版本也是可以参考的
从零开始搭建Go语言开发环境

新旧版本的差别在于旧版本有详细的配置gopath的教程,但众所周知的原因

Go1.14版本之后,都推荐使用go mod模式来管理依赖环境了,也不再强制我们把代码必须写在GOPATH下面的src目录了,你可以在你电脑的任意位置编写go代码。

感谢前辈和官方,省心不少,接下来就是其他问题了,请注意我这篇肯定不能全面覆盖大家的问题,尤其是大家独一无二的问题,只不过我希望从思维上开阔大家,告诉大家遇到的问题看似很难,其实没那么难,就是找答案的方式不对。

我是如何解决我的开发环境设置

如果只想抄作业设置开发环境,抄教程即可,其实现在很多语言都配备了在线的编程环境,只是想试试水,直接去线上网站让云服务器帮你跑代码岂不是美滋滋?

go的美滋滋网站(线上):

https://go.dev/play/
go playground
我一开始就是用这个来运行代码的,后来想要保存自己的代码,因为我会通过注释代码的方式来做笔记,为了让笔记不流失,其实很少会再去看,淦,哈哈,其实是为了以后做准备,我总不可能工作上还用网站跑代码吧,所以还是盯上了以vscode代码编辑器来跑代码的方式(不知道如何描述尬住了)

环境变量设置

学习最重要的是概念和概念之前的联系,网络上的教程大多都不说啥是环境变量,就直接让你做,蒙对了就能跑,误操作了就蒙圈,当然让偏小白的学习者卡在这关,你都不知道人家是什么,你怎么操作,配置人家?

环境变量:指明系统重要目录的地方,系统执行程序会去查找的路径

简单来说,当你在cmd或者powershell终端,向计算机发出一个指令的时候,你命令它去干活的时候,他不会整台电脑都给你检索一遍,再运行某个程序,那运行不过来,每次要执行你的helloworld程序,还要把你的D盘里的“学习资料”检索一遍,没必要,所以windows指明了指令会去固定的路径找,找到了就给你执行,找不到就给你报错。而这些系统会去查找的路径PATH就是环境变量,其中有系统环境变量还会有用户变量。

推荐小迷糊老师的环境变量科普

GOROOT和GOPATH都是环境变量,其中GOROOT是我们安装go开发包的路径,GOPATH是一个环境变量,用来表明你写的go项目的存放路径(工作目录),你跟计算机讲清楚了,你要他运行,他自然会帮你运行。

好消息是

而从Go 1.8版本开始,Go开发包在安装完成后会为GOPATH设置一个默认目录,并且在Go1.14及之后的版本中启用了Go Module模式之后,不一定非要将代码写到GOPATH目录下,所以也就不需要我们再自己配置GOPATH了,使用默认的即可。

所以一般来,朋友们在安装过程中一路默认安装下来的,只需要学会如何设置go mod就行。如果有C盘存储恐惧症的,则要自己去设置环境变量GOPATH。我不会教大家具体的操作,毕竟我自己也不算全懂,就不关公面前耍大刀了,以及上面或者网络上的教程已经事无巨细了。

这里提一下为什么上面的旧教程为什么有用,因为里面有老版要GOPATH的教程和理解,李文周老师YYDS,为数不多会提及原理的教程,感动。

关于go mod要如何用,推荐这个教程,主要是指令输入一下就OK了。

http://c.biancheng.net/view/5712.html

原理大致如此,大家import的各种包,Go语言所依赖的所有的第三方库都放在 GOPATH 这个目录下面,如果没有,你怎么输入,你写得代码要引用这些包,电脑找不到,自然会报错,所以你得有那些包,或者说你得让电脑知道你有这些包,并且让电脑知道哪里可以调用。

比如fmt strings,以前这些包得和GOPATH挂钩在特定目录,如今可以通过go mod方式来实现管理,但实际上这里是如何具体完成管理的,我是没搞清楚,但大家遇到的问题,前辈肯定遇到过,正确检索就能找到答案,而不是看完这个开发设置教程不行,再去找另外一个,那牛头不对马嘴,需求不对口,治标不治本。

治本链接推荐

Go go.mod详解

到这步,我的golang开发环境就配置完成,重新回到学习阶段,基本不会遇到执行不了的情况,或者出现报错也知道问题该如何解决。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值