Go学习笔记 - 如何学习GO

Golang
518
0
0
2022-05-07

如何学习 Go

Go 语言的设计初衷

  1. 针对其他语言的痛点进行设计
  2. 加入并发编程
  3. 为大数据,微服务,并发而生的通用编程语言

Go 语言很特别

  1. 没有”对象”,没有继承多态,没有泛型,没有 try/catch
  2. 有接口,函数式编程, CSP 并发模型( goroutine + channel )
  3. 学习 go 语言简单,应为语法简单

通过示例学习 Go

  1. 语法部分:每个小片段解决实际问题
  2. 综合部分:经典算法+典型例题+微型项目
  3. 实战项目部分:搭建分布式爬虫,结构复杂

学习概览

  1. 基本语法
  2. . 变量
  3. . 选择,循环
  4. . 指针,数组,容器
  5. 面向接口
  6. . 结构体
  7. . duck typing的概念
  8. . 组合的思想
  9. 函数式编程
  10. . 闭包的概念
  11. . 多样的例题
  12. 工程化
  13. . 资源管理,错误处理
  14. . 测试和文档
  15. . 性能调优
  16. 并发编程
  17. . goroutine 和 channel
  18. . 理解调度器
  19. . 多样的例题

项目实现

Go

Go

Go

Go语言的安装

  1. 下载: studygolang.com/dl (国内镜像)
  2. 下载注意事项:
  3. Go 官方网址为 golang.org 访问较为困难所以使用国内镜像
  4. 安装包下载是注意选择 go1.13 或者以上版本, 1.13对镜像功能进行了完善
  5. 国内镜像配置
  6. 安装完成后可以使用 go version 查看 go 是否安装成功(请使用1.13或以上版本)
  7. 通过 go env 查看镜像配置
  8. Go
  • GOPROXY 是拉取依赖或者第三方库所访问的网址,如果可以提供则直接从网址中拉取,如果无法提供就 direct 从github库中拉取,图中网址为谷歌网址,建议替换为国内镜像库.
  • 替换镜像命令: 终端执行 go env -w GOPROXY=https://goproxy.cn,direct
  • GOMODULE(图中为GO111MODULE) 的值为 on/off ,当前默认为空.
  • 空的意思是当前目录在 GOPATH下为 on ,如果不在GOPATH下为 off
  • 建议将其默认值打开,有时候 on 有时候 off 非常容易踩坑
  • 打开 GOMODUL 命令: go env -w GO111MODULE=on
  1. 安装 goimports
  2. go get -v golang.org/x/tools/cmd/goimports
  3. Go(安装成功)

Go 开发环境

常用开发环境: vi,emacs,idea,eclipse,vscode,sublime… + go插件 或者直接使用 Goland 进行开发

  1. idea + go 插件的使用
  2. 安装 idea(Ultimate)
  3. 安裝 go 插件
  4. Go
  5. 选择右下角 configure -> plugins 搜索 go 进行安装
  6. Go
  7. 搜索 file watcher 进行安装 (每次保存运行代码可以按照go语言标准进行格式化)
  8. Go
  9. 创建项目
  10. 选择 Go Modules(vgo) 注意 Proxy 中的路径是否正确,如果是direct 记得替换成之前设置的 https://goproxy.cn,direct
  11. Go
  12. 设置goimports
  13. 打开设置 搜索 file watcher 点击新增 选择 goimports 点击确定
  14. Go
  15. goimpront 可以在保存时可以将代码格式化,没有添加的import自动添加上去并且排序,非常的方便
  16. vscode + go 插件
  17. vscode 对 go 的支持也非常的好,在使用go语法时未安装会自动跳出安装提示,按照提示安装即可
  18. 注意: vscode 运行 go 需要在命令行中执行相关文件即可.
  19. Go