既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上C C++开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
#解决go get下载无反应
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.io,direct
设置不走 proxy 的私有仓库,多个用逗号相隔(可选)
go env -w GOPRIVATE=*.corp.example.com
设置不走 proxy 的私有组织(可选)
go env -w GOPRIVATE=example.com/org_name
参考:https://goproxy.io/zh/

这里参考:https://blog.youkuaiyun.com/qq\_36234688/article/details/108967859
##### 二、代码示例
首先在go工作目录创建文件夹
ubuntu@VM-0-9-ubuntu:~/wsq/gowork$ pwd
/home/ubuntu/wsq/gowork
ubuntu@VM-0-9-ubuntu:~/wsq/gowork$ mkdir src pkg bin
ubuntu@VM-0-9-ubuntu:~/wsq/gowork$ ls
bin pkg src
ubuntu@VM-0-9-ubuntu:~/wsq/gowork$ cd src/
ubuntu@VM-0-9-ubuntu:~/wsq/gowork/src$ vim hello.go
ubuntu@VM-0-9-ubuntu:~/wsq/gowork/src$ go build hello.go
ubuntu@VM-0-9-ubuntu:~/wsq/gowork/src$ ls
hello hello.go
ubuntu@VM-0-9-ubuntu:~/wsq/gowork/src$ ./hello
hello, world
这里我使用的时候普通用户的go环境,导致go install的时候报错,后面再看下。
测试一个go并发代码:
package main
import (
“fmt”
“time”
)
func say(s string) {
for i := 0; i < 5; i++ {
time.Sleep(100 * time.Millisecond)
fmt.Println(s)
}
}
func main() {
go say(“world”)
say(“hello”)
}
##### 三、golang 使用 protobuf
参考:
protoc 命令来自于 https://github.com/google/protobuf,可以产生序列化和反序列化的代码,无go相关代码。
protoc-gen-go插件则来自于https://github.com/golang/protobuf/protoc-gen-go, 可以产生go相关代码, 除上述序列化和反序列化代码之外, 还增加了一些通信公共库
而grpc又来源于https://github.com/grpc/grpc-go, protoc和protoc-gen-go这两个工具都不在其中,所以玩grpc的时候,少不了protoc和protoc-gen-go
因此需要首先下载安装protoc和protoc-gen-go
go get -u github.com/golang/protobuf/protoc-gen-go
如果成功,会在GOPATH/bin下生成protoc-gen-go
~ echo $GOBIN
/usr/local/go/bin
➜ ~ ls /usr/local/go/bin/protoc-gen-go
/usr/local/go/bin/protoc-gen-go
验证代码:https://www.cnblogs.com/jkko123/p/7161843.html
##### 三、补充环境变量知识
>
> Ubuntu保存环境变量的几个文件
> /etc/profile
> 在用户登录时,操作系统定制用户环境时使用的第一个文件,此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行。
> /etc /environment
> 在用户登录时,操作系统使用的第二个文件, 系统在读取用户个人的profile前,设置环境文件的环境变量。
> ~/.profile
> 在用户登录时,用到的第三个文件 是.profile文件,每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,会设置一些环境变量,执行用户的.bashrc文件。
> /etc/bashrc
> 为每一个运行bash shell的用户执行此文件,当bash shell被打开时,该文件被读取。
> ~/.bashrc
> 该文件包含专用于用户的bash shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取
>
>


**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
**[需要这份系统化的资料的朋友,可以添加戳这里获取](https://bbs.youkuaiyun.com/topics/618668825)**
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
s.youkuaiyun.com/topics/618668825)**
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**