Golang1。18入门精炼教程全平台(Sublime4)Golang开发环境搭建EP00
Go lang,为并发而生的静态语言,源于C语言又不拘泥于效率,高效却不流于古板,Python灵活,略输性能,Java严谨,稍逊风骚。君不见各大厂牌均纷纷使用Go lang对自己的高并发业务进行重构,原因无他,经济下行的大背景之下,性能突出、效率拉满的Go lang无疑是高并发场景下节约服务器资源的一剂灵药。
与时俱进,顺应潮流,本次我们乘着市场的东风,在各大主流平台(Win/Mac/Linux/Docker)安装并搭建Go lang1.18的开发环境,短时间内做到能够在任何一款开发机或者服务器上输出Go lang的全部功力,如臂使指,挥洒自如。 Windows11平台
首先来到市场占有率最高的Win11系统,前往Go lang官网 https://go.dev/dl/ 下载win平台下的64位安装包: Microsoft Windows Windows 7 or later, Intel 64-bit processor go1.18.5.windows-amd64.msi (130MB)
选择安装目录后,直接点击安装即可。
安装完毕之后,首先输入"win+R",打开终端。然后在里面输入命令:control system。在打开的系统信息界面中,选择左侧菜单的"高级系统设置"。随后在打开的"系统属性"窗口选择下方的"环境变量"选项。最后在打开的环境变量中,检查系统是否将Go lang的安装目录"c:/go/bin"配置到了环境变量里,如果已经配置了,在终端中键入命令: go version
系统返回: C:Usersliuyue>go version go version go1.18.5 windows/amd64
说明Go lang1.18版本已经在系统中安装成功。 Mac平台
接着来到Mac系统,Mac系统一般会包含两套架构,分别是:搭载Intel芯片的x86架构系统,和搭载M系列芯片的ARM架构系统。
首先打开终端,键入如下命令: uname -m
如果返回: arm64
说明是ARM架构系统,反之: x86
则是Intel芯片的x86架构系统。
前往Go lang官网 https://go.dev/dl/ ARM架构系统下载: Apple macOS (ARM64) macOS 11 or later, Apple 64-bit processor go1.18.5.darwin-arm64.pkg (132MB)
X86架构系统下载: Apple macOS (x86-64) macOS 10.13 or later, Intel 64-bit processor go1.18.5.darwin-amd64.pkg (138MB)
下载之后,双击进行安装即可。
区别于Windows平台,我们还可以使用更加灵活的方式安装配置Go lang1.18,那就是鼎鼎有名的Homebrew。
Homebrew是一款自由及开放源代码的软件包管理系统,用以简化macOS系统上的软件安装过程,最初由马克斯·霍威尔写成。因其可扩展性得到了一致好评,而在Ruby on Rails社区广为人知。 Homebrew使用GitHub,通过用户的贡献扩大对软件包的支持,同样也支持Go lang生态环境。
首先安装Homebrew: /bin/zsh -c "$(curl -fsSLhttps://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
随后运行命令清理缓存和更新版本: brew cleanup && brew update
接着运行命令进行go lang1.18的安装操作: brew install go
接着会进行下载安装操作: brew install go ==> Downloading https://ghcr.io/v2/homebrew/core/go/manifests/1.18.5 Already downloaded: /Users/liuyue/Library/Caches/Homebrew/downloads/819fc08bdc0ecafc9713bdfd76a9e6901172c0b2c0cdde0dd482a0b37ba008fd--go-1.18.5.bottle_manifest.json ==> Downloading https://ghcr.io/v2/homebrew/core/go/blobs/sha256:4f80cc29d711ddc5038f6b4684fe31674df01284aaa611480 ==> Downloading from https://pkg-containers.githubusercontent.com/ghcr1/blobs/sha256:4f80cc29d711ddc5038f6b4684fe3 ######################################################################## 100.0% ==> Pouring go--1.18.5.arm64_monterey.bottle.tar.gz ???? /opt/homebrew/Cellar/go/1.18.5: 11,990 files, 596.2MB ==> Running `brew cleanup go`... Disable this behaviour by setting HOMEBREW_NO_INSTALL_CLEANUP. Hide these hints with HOMEBREW_NO_ENV_HINTS (see `man brew`).
由于诸位可以理解的原因,这里建议大家用学术的方式连接互联网从而获取更快的下载速度。
最后执行命令清理安装包缓存: brew cleanup go
接着键入命令就可以查看go lang具体的安装目录: brew list go /opt/homebrew/Cellar/go/1.18.5/bin/go /opt/homebrew/Cellar/go/1.18.5/bin/gofmt /opt/homebrew/Cellar/go/1.18.5/libexec/api/ (22 files) /opt/homebrew/Cellar/go/1.18.5/libexec/bin/ (2 files) /opt/homebrew/Cellar/go/1.18.5/libexec/doc/ (5 files) /opt/homebrew/Cellar/go/1.18.5/libexec/lib/ (3 files) /opt/homebrew/Cellar/go/1.18.5/libexec/misc/ (393 files) /opt/homebrew/Cellar/go/1.18.5/libexec/pkg/ (695 files) /opt/homebrew/Cellar/go/1.18.5/libexec/src/ (7786 files) /opt/homebrew/Cellar/go/1.18.5/libexec/test/ (3071 files) /opt/homebrew/Cellar/go/1.18.5/libexec/ (6 files)
在终端键入命令: go version
系统返回: ➜ ~ go version go version go1.18.5 darwin/arm64
这里建议使用Homebrew来安装Go lang,brew会根据当前系统架构来自动选择不同系统架构的编译版本来进行安装。 Ubuntu/Centos
首先删除 /usr/local/go 目录,根据官网说明,如果之前有安装过 go,那么需要将该位置的 go 目录删除掉 : sudo rm -rf /usr/local/go
接着下载安装并安装: # 下载安装包 $ wget https://golang.google.cn/dl/go1.18.linux-amd64.tar.gz # 解压 golang 到 /usr/local 下 $ sudo tar xzvf go1.18.linux-amd64.tar.gz -C /usr/local
最后设置环境变量: # 修改 $HOME/.profile 或 /etc/profile 文件 # 这里可能会出现权限不足(ubuntu需要加sudo, centos需要切换成root权限) $ sudo vim /etc/profile # 在该文件最后一行插入(进入后,按 i键进入编辑模式) $ export PATH=$PATH:/usr/local/go/bin # 按 esc 退出编辑模式, 按 :wq 保存文件 $ go version
系统返回: go version go1.18 linux/amd64Docker容器搭建
如果我们不希望go lang在系统中留下些许的痕迹,Docker也可以帮我们快速搭建开发环境,关于Docker的安装,请移玉步至:一寸宕机一寸血,十万容器十万兵|Win10/Mac系统下基于Kubernetes(k8s)搭建Gunicorn+Flask高可用Web集群。
首先建立环境文件夹: mkdir mygo cd mygo
随后创建测试脚本hello.go: package main func main() { println("hello go1.18") }
接着创建Docker镜像打包文件Dockerfile: FROM golang:alpine WORKDIR /build COPY hello.go . RUN go build -o hello hello.go CMD ["./hello"]
这里的创建逻辑是基础镜像选择alpine,容器内创建build编译文件夹,将hello.go拷贝到build目录下,随后运行容器内的go编译器对脚本进行打包,最后运行打包后的可执行文件。
运行命令打包镜像: docker build -t go .
随后系统自动下载基础镜像并且编译: Sending build context to Docker daemon 3.072kB Step 1/5 : FROM golang:alpine ---> 15115d36d05e Step 2/5 : WORKDIR /build ---> Using cache ---> 09ea4177a5f7 Step 3/5 : COPY hello.go . ---> 20ff0208e342 Step 4/5 : RUN go build -o hello hello.go ---> Running in c03d13c80c36 Removing intermediate container c03d13c80c36 ---> c41673d8b447 Step 5/5 : CMD ["./hello"] ---> Running in 8f74af4426cf Removing intermediate container 8f74af4426cf ---> caf626888641 Successfully built caf626888641 Successfully tagged go:latest
查看镜像明细: docker images
返回明细: [root@instance-7dojaq0e mygo]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE go latest caf626888641 43 minutes ago 329MB golang alpine 15115d36d05e 15 hours ago 328MB
运行docker命令启动容器: docker run -it --rm go
系统返回: hello go1.18
至此,Docker搭建go lang1.18环境就完成了。 Sublime 4 for Go lang
编写Go lang代码也可以选择轻量编辑器Sublime,是的,一律千篇的Goland多多少少有点审美疲劳,关于Sublime 4的安装,请移步:轻盈潇洒卓然不群,敏捷编辑器Sublime text 4中文配置Python3开发运行代码环境(Win11+M1 mac) 这里不再赘述。
打开Sublime 4,使用组合键: control + shift + p
如果是mac平台,键入: cmd + shift + p
在弹出的命令行中选择:Install Package
然后输入:Golang Build 按回车安装
安装成功后,配置go lang安装路径:
首选项 -> package settings -> Golang Config -> Settings - Uesrs { "PATH": "C:/Go/bin", "GOPATH": "C:/Go" }
紧接着配置go mod,go mod是Go语言的包管理工具,官方推荐使用,有了它就不再受GOPATH的限制,可以在任何目录初始化项目,打开命令行,键入命令: go env -w GO111MODULE=auto go env -w GOPROXY=https://goproxy.cn,direct
然后在Sublime 4中新建一个hello.go文件: package main import "fmt" func main() { fmt.Println("hello go1.18") }
接着使用快捷键 control + b 或者 control + shift + b 选择go run编译器运行代码,Mac系统用cmd替换control,如图所示:
随后继续安装代码补全插件,键入:control + shift + p 并输入:Install Package
输入:Golang Tools Integration 回车进行安装
重启Sublime 4。
随后即可在代码中进行补全操作:
至此,开发编辑器就配置好了。
诚然,如果累了,不想折腾,使用微软的vscode配合code runner和go插件直接起飞也是可以的,简单直接,方便好用。 结语
不同于Python或者是Ruby,Go lang不是系统预装的基础语言,所以配置起来相对独立,不需要考虑与系统版本冲突问题。与此同时,Golang还支持交叉编译功能,即在Windows平台可以将代码编译成Linux平台可执行的文件,对于Windows平台用户来说,这无疑是一个重大利好。
被遗忘的凯尔卡门1453年,奥斯曼土耳其帝国雄主穆罕默德二世率领军队攻占拜占庭帝国首都君士坦丁堡。起初君士坦丁堡的军民也孤注一掷,誓与古城共存亡。他们尽一切可能加固工事,除了在西面筑了两道坚不可摧
马克龙我不后悔!法国大革命又称法国资产阶级革命,是1789年7月14日在法国爆发的革命,统治法国多个世纪的波旁王朝及其统治下的君主制在三年内土崩瓦解。18世纪后期,法王和他的大臣们眼看国库空虚,就
梁启超不为人知的事1903年,30岁的梁启超迎娶17岁的王桂荃,洞房花烛夜,梁启超却对王桂荃说我娶你可以,但没有名分,生的孩子也不能叫你妈!我的妻子只有一个,那就是李蕙仙!不料,转身梁启超的心根本不
清朝真的有穿越者?竟将世界全貌大致写出中国三百年前竟然就有世界地图了?这可不是什么穿越者的故事,而是由300多年前由意大利人利玛窦所画出的,名叫万国舆图。万国舆图第一次让中国看见了世界的大致全貌,但在当时的情形下也仅仅
摊牌了?宁德时代丢出王炸,外媒马斯克心要碎了我国在建国初期,是百业待兴,一穷二白的,经济和科技都处于落后阶段。尤其是半导体领域,可以说是一个空白。为了快速发展,我们走上了改革开放之路,借助西方国家的先进技术和人才助力中国经济
波浪壮阔清朝影视剧,剖析太到位了15。清朝(16441912年)是中国历史上第二个由少数民族建立的大一统王朝。也是中国最后一个封建王朝,历经十二帝,享国267年。1912年2月12日清帝溥仪退位,清朝结束。满清共
不仅仅是身份证,还有这四种照片,使用后删除为好昨天在使用手机的过程中,手机提示我内存不足,我就把手机整理一下,将一些不常用的软件照片视频文件之类的做删除处理。当我在翻看手机里的相片,犹豫着一些照片到底要不要删除时,恰好老公看到
余伟马克思世界历史理论的具体化与早期美国全球史的时代之思来源中国社会科学文摘2022年第11期P69P71作者单位福建师范大学社会历史学院,摘自世界历史评论2022年2期,于世华摘全球史观,迄今已蔚为大观,并形成了一门新兴学科。马克思世
部落冲突皇室战争卡牌大全游戏简介部落冲突皇室战争是由Supercell出品的一款以卡牌对战为主的游戏,玩家自行组合牌组(每个牌组为8张卡牌。进行联机对战,1V1对战获胜可以获得金币奖杯及宝箱,战败则会扣除
岳飞后裔从不与两个姓氏通婚一个有血海深仇,一个有救命之恩救命之恩如山,杀生之仇如海,自古以来人们便对影响自己生与死的人有着刻骨铭心的记忆。因为人类不仅有生老病死,还有意外身亡,如果这些意外是客观条件下形成的自不必说,但是意外是因为旁人造
三分钟读懂汉高祖刘邦的一生如何从不务正业走向帝王宝座汉高祖刘邦(公元前256年公元前195年),中国历史上著名的政治家战略家和军事家,是汉朝的创始人和第一代皇帝。他出身贫寒,年轻时做过奴隶书生和小商人等多种职业。由于官僚腐败和阶级压
孩子不是没有任何可取的优点,只是我们没有发现他们的优点而已很多家长都有一个共同点,总喜欢把孩子的弱势扩大化,怎么看都觉得自己的孩子不顺眼,没有其他家的孩子优秀和听话。但实际上,很大一部分原因不是孩子不够优秀,而是我们忽略了他们的优点。对孩
切勿模仿!男子让幼儿握方向盘开车还拍摄炫耀扣3分罚200让小孩子开车这种事,已经屡见不鲜,虽然大家都很气愤当家长的不负责任,他们也受到了相应的处罚,但时不时还是会有发生。据青流视频报道,近日在四川甘孜,一段男子让幼儿手握方向盘开车的短视
中科院昆明动物研究所揭开1。4万年前云南蒙自人神秘面纱云南不仅见证了寒武纪生物大爆发的奇迹,同时目睹了人科物种从1200万600万年前的禄丰古猿约170万年前的直立人元谋猿人,再到1。4万年前的智人蒙自人等多个人类重要的演化阶段,这表
太空技术探索公司美国太空探索技术公司美国以航天为主的公司太空探索技术公司,即美国太空探索技术公司(SpaceX),是一家由PayPal早期投资人埃隆马斯克(ElonMusk)2002年6月建立的美
专研成分技术赋能,悦诗风吟重遇新拐点2022年,真正不用建立耐受的A醇精华重磅来袭它就是悦诗风吟A白瓶。一上线就引爆网络,获得大批配方师成分党一致认可。A白瓶是悦诗风吟今年才推出不久的新产品,有着适用于敏感肌的抗初老
DBDPJ01A单片机开发应用技术综合实验装置DBDPJ01A单片机开发应用技术综合实验装置(挂箱积木式)一概述单片机开发应用综合实验装置由控制屏实验挂箱实验桌组成,通过本实验台可完成单片机的接口扩展数据采集数据显示键盘控制定
国产芯片接连发布,汽车芯片行业标准呼之欲出导语在本月十八号召开的中国汽车芯片高峰论坛中,中国汽车芯片标准工作启动了三批项目起草组,这标志着中国汽车芯片的标准呼之欲出。撰文蔡家伦编辑禾子之所以会如此迅速的制定标准,一方面是因
金融信息服务行业研究B端为基,C端为器(报告出品方作者招商证券,刘玉萍孟林)行业整体情况金融信息服务内涵及产业链金融信息服务行业即以互联网技术为核心手段,依托网站电脑及手机端软件等载体向用户提供股票基金债券期货等金融产
蓝帆医疗拟投资不超过24。8亿,建设科创总部及产业化基地新京报讯(记者张兆慧)12月14日,蓝帆医疗发布公告,拟在上海市浦东新区上海国际医学园区投资建设蓝帆医疗科创总部及产业化基地项目。该项目用于蓝帆医疗全球商业总部及高值产医疗器械生产
临高金牌港开发区瞄准三大产业跑出加速度金牌港开发区相关负责人介绍园区产业布局新海南客户端南海网南国都市报12月14日消息(记者林文泉)14日,记者从2022首届海南自贸港(临高)乡村振兴发展论坛暨经济合作洽谈周获悉,临
雾化的危害到底有多大?给宝宝做雾化之前一定要先了解这些孩子一到冬天就咳嗽,因此雾化就成了家长们时常挂在嘴边的词语。不过很多家长似乎对雾化并不是很了解,一听到这两个字就焦虑,今天,我们就来好好认识一下雾化。雾化是指通过专用设备将药物分散