Skip to content

Golang个人知识库

目录

Golang标准文档

Golang基础

Go 适合什么

Go 是一门强调简单、并发和工程效率的语言,常用于后端服务、云原生组件、命令行工具、网关、DevOps 工具和高并发网络服务。

学习路线

mermaid
flowchart TD
    A[环境安装和 go 命令] --> B[基础语法]
    B --> C[函数、结构体、接口]
    C --> D[集合和错误处理]
    D --> E[goroutine 和 channel]
    E --> F[context 和并发控制]
    F --> G[Web API 和数据库]
    G --> H[测试、模块和项目实践]

重点目录

目录学习重点
从零到生产级掌握建立 Go 语法、底层原理、并发、Web、测试和生产排查主线
从零到精通验收清单按“是什么、为什么、原理、错误后果、商业场景、排查、面试”检查是否真正学懂 Go
商业场景训练营用资产查询服务、slice、map、goroutine、context 和测试串起生产落地
环境搭建Go 安装、模块、常用命令
基础语法变量、常量、条件、循环
函数多返回值、闭包、defer
结构体和接口组合、方法、接口设计
并发goroutine、channel、锁、WaitGroup
context超时、取消、请求链路传值
测试单元测试、表格驱动测试、基准测试
Web API路由、中间件、参数校验、响应封装
面试题标准回答、追问点和原理跳转

Go 工程实践建议

  1. 错误要显式处理,不要忽略返回值。
  2. 包名短小清晰,不要用 utils 承载所有东西。
  3. 并发要有退出机制,避免 goroutine 泄漏。
  4. 对外接口保持小而稳定,内部实现可以逐步调整。
  5. 使用 go testgo fmtgo vet 保持代码质量。

和 Java 的思维差异

方面JavaGo
面向对象类和继承体系结构体、方法、接口组合
异常处理try/catch返回 error
并发线程池、锁、Futuregoroutine、channel、context
依赖管理Maven/GradleGo Modules
格式化团队约定较多gofmt 统一格式