再躺平,我们就老了!!!!!!!!!!!!!
现在云原生已经是大势所趋,GO世界也着实的一片火海吧,之前也有使用的GO开发简单的web业务,对gomicro也有初步的了解和简单使用,苦于无实际的操作项目,年久失修了!!技术的这东西其实就是要经常的打交道,才混得脸熟~恰逢最近周末时间,所以想重新极速回归一下,重新做相关学习笔记,不为别,只是为了让自己后续可以回顾一下。
PY已经玩的太久了,感觉PY在微服务的领域是玩不开的,市面上几乎没看到那个是说使用PY构建微服务的,所以还是需要学习GO,目前go微服务领域框架也是非常的多,而相对的PY的我是真的没知道有几个,就nameko也早就歇菜了~N久没更新了~~本来还想fastapi结合nameko试一试!感觉没必要了!
所以还是得重开Go学习之路!
PS:本系列的笔记,纯属的各种搬砖记录和个人的实践过程的笔记!大佬建议直接的PASS吧!现在GO我也是小白!所以如有纰漏错误,您也愿意指点一二,随时加我的!感谢大佬!
另外:原理的东西我的不会讲太多!毕竟小白一个,所以多数的情况只是纯笔记,和步序记录 不想叽里呱啦的说太多!哈哈

安装的过程(基本就是下一步下一步):
PS 为了逼格无用的截图多了一点哈哈!请原谅!
注意安装目录:
等待安装完成:
完成完成:
检查安装情况:
C:\Users\15944>go version
go version go1.17.2 windows/amd64
C:\Users\15944>
安装过程其实对我们的环境变量已经自动化的设置了,所以上面的我们的可以直接的使用GO命令执行!
C:\Program Files\Go\bin 指向的安装目录下的GO一些命令
全局模式(估计不会使用这种):我们的当前电脑下的会共享同一个GOPATH下的依赖的包,但是通常我们的本地电脑肯定是不止一个项目的开发,每个项目的是区分相关的依赖包,类似的PY的需要使用虚拟环境进行隔离一样。
局部模式(golang中指定属于自己的项目的私有GOPATH)
GOROOT 本质其实是go的安装路径
由于我以前安装有GO就版本的,使用goland新建项目的时候,它使用的不是我的最新安装的SKD路径,识别的还是以前旧的安装的SDK!
通常如果你没安装多个版本的,会自动的默认识别你当前仅有一个GO环境!
但是新建项目的时候,通常的现在我们的基本都是使用GO-Modeuls模式进行项目创建了!
修改使用我的刚刚安装的go version go1.17.2 windows/amd64 SDK
提示:
网传上面的问题是版本问题了!!!所以我的试一试只能升级一下IDE!
更新环境后可以正常的修改了:
Microsoft Windows [版本 10.0.19041.1237]
(c) Microsoft Corporation。保留所有权利。
C:\Users\15944\Desktop\GoPro\pro\test01>go version
go version go1.17.2 windows/amd64
C:\Users\15944\Desktop\GoPro\pro\test01>
随手示例:
package main
import "fmt"
type Books struct {
title string
author string
subject string
book_id int
}
func main() {
var Book1 Books /* 声明 Book1 为 Books 类型 */
var Book2 Books /* 声明 Book2 为 Books 类型 */
/* book 1 描述 */
Book1.title = "Go 语言"
Book1.author = ""
Book1.subject = "Go 语言教程"
Book1.book_id = 6495407
/* book 2 描述 */
Book2.title = "Python 教程"
Book2.author = ""
Book2.subject = "Python 语言教程"
Book2.book_id = 6495700
/* 打印 Book1 信息 */
fmt.Printf( "Book 1 title : %s\n", Book1.title)
fmt.Printf( "Book 1 author : %s\n", Book1.author)
fmt.Printf( "Book 1 subject : %s\n", Book1.subject)
fmt.Printf( "Book 1 book_id : %d\n", Book1.book_id)
/* 打印 Book2 信息 */
fmt.Printf( "Book 2 title : %s\n", Book2.title)
fmt.Printf( "Book 2 author : %s\n", Book2.author)
fmt.Printf( "Book 2 subject : %s\n", Book2.subject)
fmt.Printf( "Book 2 book_id : %d\n", Book2.book_id)
}
为了解决go get的速度问题,我们的需要设置一下代理,雷士的Pycharm的切换豆瓣或阿里的pip源。
C:\Users\15944\Desktop\GoPro\pro\test01>go env
set GO111MODULE=on
set GOARCH=amd64
set GOBIN=
set GOCACHE=C:\Users\15944\AppData\Local\go-build
set GOENV=C:\Users\15944\AppData\Roaming\go\env
set GOEXE=.exe
set GOEXPERIMENT=
set GOFLAGS=
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOINSECURE=
set GOMODCACHE=C:\Users\15944\go\pkg\mod
set GONOPROXY=
set GONOSUMDB=
set GOOS=windows
set GOPATH=C:\Users\15944\go
set GOPRIVATE=
set GOPROXY=https://proxy.golang.org,direct
set GOROOT=C:\Program Files\Go
set GOSUMDB=sum.golang.org
set GOTMPDIR=
set GOTOOLDIR=C:\Program Files\Go\pkg\tool\windows_amd64
set GOVCS=
set GOVERSION=go1.17.2
set GCCGO=gccgo
set AR=ar
set CC=gcc
set CXX=g++
set CGO_ENABLED=1
set GOMOD=C:\Users\15944\Desktop\GoPro\pro\test01\go.mod
set CGO_CFLAGS=-g -O2
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-g -O2
set CGO_FFLAGS=-g -O2
set CGO_LDFLAGS=-g -O2
set PKG_CONFIG=pkg-config
set GOGCCFLAGS=-m64 -mthreads -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=C:\Users\15944\AppData\Local\Temp\go-build3203606878=/tmp/go-build -gno-re
cord-gcc-switches
修改:
set GOPROXY=https://proxy.golang.org,direct
go env -w GOPROXY=https://goproxy.io,direct
或
go env -w GOPROXY=https://goproxy.cn,direct
补充源的说明:
http://goproxy.cn:由七牛云运行,支持代理 http://sum.golang.org,经过 CDN 加速,高可用,可应用进公司复杂的开发环境中,亦可用作上游代理;
http://mirrors.aliyun.com/goproxy:由阿里云运行,不支持 sumdb 代理,经过 CDN 加速,高可用,可应用进公司复杂的开发环境中,亦可用作上游代理;
http://goproxy.io:由个人运行,支持代理 http://sum.golang.org。
set GO111MODULE=on 默认的已经打开了!如果没有打开的话,自己需要修改
修改:
go env -w GO111MODULE=on
这里主要是需要安装一个插件:
PS:gofmt和goimoorts的安装也是使用goget来的安装的!如果你之前没有设置好代理的,如果运气好的话,也许可以成功,运气的不好的话,!!那就可能会出现下面的提示:
安装的时候回提示不存在:
但是的好奇啊!我上面不是已经修改代理了吗!!这里走的还是官网的地址!!!!
重启IDE也不行,那我的收到的安装?
命令:
go get golang.org/x/tools/cmd/goimports
执行:
再去看看面板:颜色不红了!!!说明可以了!!!
验证自动导包加载fiber框架:
完成导入:
运行项目:
END
简书:https://www.jianshu.com/u/d6960089b087
掘金:https://juejin.cn/user/2963939079225608
公众号:微信搜【小儿来一壶枸杞酒泡茶】
小钟同学 | 文 【欢迎一起学习交流】| QQ:308711822
1:本文相关描述主要是个人的认知和见解,如有不当之处,还望各位大佬指正。 2:关于文章内容,部分内容参考自互联网整理,如有链接会声明标注;如没有及时标注备注的链接的,如有侵权请联系,我会立即删除处理哟。
原文作者:程序员小钟同学;如有侵权,请联系管理员删除。